Блок схема начало подключение к базе данных с помощью компьютера datasource
Тема нашего сегодняшнего разговора - ODBC. Если вы хоть раз писали СУБД (системы управления базами данных), то вам, наверное, знакома эта аббревиатура. Расшифровывается ODBC как Open DataBase Connectivity (вольный перевод - открытая система связи с базами данных). Open (открытая) в данном случае означает "расширяемая", "легко наращиваемая", "открытая для модификаций". Вы сами это поймете, если посмотрите на архитектуру построения ODBC:
Как легко заметить, она действительно легко наращиваемая. Для добавления нового типа БД нужно лишь написать драйвер и зарегистрировать его. Еще одно преимущество, вытекающее из такого построения ODBC - пользовательское приложение общается с физической БД через менеджер драйверов, фактически ничего не зная о типе используемой БД (общение менеджера драйверов и самих драйверов более менее стандартно, так что с точки зрения пользователя все источники данных обладают практически одинаковыми свойствами). Таким образом, вы легко можете поменять физический тип базы данных, а приложение даже не узнает об этом (конечно, существуют исключения из-за особенностей поддержки языка SQL различными типами БД, но они несущественны).
Физически ODBC представляет собой набор динамических библиотек DLL, которые обслуживают подключение и работу с конкретным типом базы данных.При запросе на подключение к определенной, заранее описанной базе "активизируется" определенная DLL - драйвер этого типа БД. Обращение к определенной базе данных происходит по имени так называемого источника данных ODBC (или DSN - data source name). Можно представить DSN как своего рода объявление БД на данном компьютере, причем DSN может быть пользовательским, т.е. находится в области видимости только одного польователя, в сеансе которого был создан этот DSN, и системным, т.е. видимым всеми пользователями данного компьютера.
Управление источниками данных ODBC (да и вообще настройкой всей системы ODBC) осуществляется с помощью специальной программы - ODBC-администратора. Давайте разберем, где его можно найти в различных версиях Windows:
- Windows 9х - сам исполняемый файл odbcad32.exe лежит в каталоге Windows\System. Запускать его можно напрямую либо через Панель управления (значок "Источники данных ODBC (32-бит)"). Если на компьютере установлен BDE, запустите администратор BDE и из меню Object выберите пункт ODBC Administrator.
- Windows 2000 - исполняемый файл odbcad32.exe лежит в каталоге WinNT\System32, а запускать его можно через Панель управления -> Администрирование -> Источники данных ODBC. К сожалению, у меня нет возможности проверить, как с ODBC в NT3.51 / 4 - не думаю, что там ребята из Microsoft сильно его спрятали.
Почему ODBC?
Ведь есть же BDE, скажете вы. Да, возможно вы правы. Однако здесь есть "но". У обоих движков есть свои преимущества и недостатки. ODBC намного лучше работает с "родными, от Microsoft" источниками данных продуктов Microsoft Office - типа Access, Excel, MS SQL Server (вообще-то из-за Access я и затеял всю эту писанину). Кроме того, в стандартный дистрибутив BDE, который можно на каждом шагу найти в Интернете, я что-то ни разу не встречал SQL Links, впрочем, как я ни разу не встречал и отдельного дистрибутива SQL Links. А именно после установки SQL Links в BDE появлется возможность создавать алиасы к Access, MS SQL Server, Oracle и др. типам баз данных. Устанавливать же полную версию C++Builder или Delphi на компьютер пользователя может не каждый. А ODBC на "голой" машине уже содержит драйверы Access, Excel, FoxPro и SQL Server. В общем, для общего развития не помешает освоить и ODBC, тем более что access'овские базы, с которыми мы будем работать через ODBC, очень надежны (не в пример стандартным BDE'шным paradox'овым, у которых то и дело сыпятся индексы, а про такое поле как счетчик я вообще молчу), практически на любом компьютере пользователя установлен Office, что позволяет вносить коррективы "на месте", да и удобство всей базы в одном файле тоже иногда сказывается.
Пример 2: Создаем новый источник данных.
В этом примере вы узнаете, как создать системный DSN для базы данных Access. Предположим, файл с БД лежит в том же каталоге, что и программа, а его имя - db1.mdb.
Как видите, здесь уже не нужны хэндлы и код достаточно ясный. В первых трех строках - дописываем в строку атрибутов путь к файлу БД. Затем собственно создаем источник. Обработка ошибок тривиальна.
Важное замечание: При создании DSN если такое имя уже есть, то не возвращается ошибка, а создается DSN с текущими параметрами.
Исходный код
Сначала несколько замечаний. В C++Builder есть заголовочные файлы для работы с ODBC. Нам нужно два из них - odbcinst.h и sql.h. Добавьте строки
в начало вашего файла. Реализация функций, описанных в этих файлах, находится в нескольких DLL, лежащих в каталоге Windows\System (или WinNT\System32). В наших примерах будут использоваться две такие DLL, а именно odbc32.dll и odbccp32.dll. Чтобы подключить их к проекту, нужно проделать следующие шаги:
1. Запускаем любой досовский файл-менеджер или командную строку Windows и переходим в каталог Windows\System (WinNT\System32) и находим эти две библиотеки.
2. Если каталог BIN С++Builder'а прописан в переменной окружения PATH, просто набираем
иначе набираем полностью путь к файлу implib.exe, либо копируем его в каталог, прописанный в PATH.
3. То же самое проделываем с odbccp32.dll:
4. Полученные .lib - файлы копируем в каталог с проектом
5. Из меню Project выбираем пункт Add to Project. и поочередно добавляем odbc32.lib и odbccp32.lib.
Все, теперь система сама загрузит эти DLL во время запуска программы.
Пример 1: Получаем список уже созданных источников данных ODBC.
Этот фрагмент кода просто перебирает все уже созданные источники данных. В первой строке фрагмента после объявления переменных создается хэндл текущего сеанса работы с ODBC, затем выбирается первое имя DSN. Если первое имя успешно прочитано (retCode содержит константу SQL_SUCCESS), то в цикле выбирается следующий DSN и т.д. до тех пор, пока не будет прочитан последний DSN. Если на место комментария вставить код (ListBox1 -> Items -> Add(DSNName)), добавляющий прочитанное имя в ListBox, например, то вы сможете просмотреть весь этот список. А если на место комментария вставить что-нибудь типа
то мы проверим, сможет ли наша программа работать нормально.
Фнукции, с которыми нам придется работать
Естественно, я не буду рассказывать обо всех функциях, с помощью которых можно сделать с ODBC все, что угодно. Поверьте, их очень много. Нам же для нашей практической задачи достаточно будет всего четырех:
1. Функция SQLDataSources возвращает список всех источников данных ODBC.
- hEnv - хэндл, возвращаемый функцией SQLAllocEnv();
- fDirection - задает режим работы. Может принимать значения SQL_FETCH_FIRST - вернуть первую запись и SQL_FETCH_NEXT - вернуть следующую запись. Логика работы аналогична функциям FindFirst и FindNext (помните DOS?);
- szDSN - указатель на буфер длиной не менее cbDSNMax, куда будет записано имя источника данных;
- cbDSNMax - длина буфера szDSN;
- pcbDSN - указатель на целое, куда записывается реальная длина (не включая завершающий \0) принятого имени источника данных;
- szDescription - указатель на буфер длиной как минимум 255 символов, куда запистывается описание принятого источника данных;
- cbDescriptionMax - длина буфера szDescription;
- pcbDescripton - указатель на целое, куда записывается реальная длина описания источника данных.
2. Функция SQLConfigDataSources добавляет, изменяет или удаляет указанный источник данных.
- hwndParent - хэндл родительского окна. Если не равен NULL, отображается стандартный для данного типа источника данных диалог настройки.
- fRequest - тип запрашиваемой операции. Может принимать следующие значения:
- ODBC_ADD_DSN (ODBC_ADD_SYS_DSN) - запрос на создание нового пользовательского (системного) источника данных;
- ODBC_CONFIG_DSN (ODBC_CONFIG_SYS_DSN) - запрос на изменение существующего пользовательского (системного) источника данных;
- ODBC_REMOVE_DSN (ODBC_REMOVE_SYS_DSN) - удаление пользовательского (системного) источника данных.
Приведем несколько примеров строки атрибутов, чтобы вам было понятно, что это такое:
"DSN=MySource\0UID=MyLogin\0PWD=MyPass" - источник данных с именем MySource, логин - MyLogin, пароль - MyPass
Каждый драйвер "понимает" свои ключевые слова, чаще всего применяются:
Для баз данных Microsoft Access для указания имени БД вместо DATABASE используется ключевое слово DBQ.
3. Функция SQLAllocEnv создает новый хэндл для использования в других функциях и инициализирует интерфейс для работы с ODBC
hEnv - указатель на переменную, которая будет хранить созданный хэндл в случае удачного выполнения функции
4. Функция SQLFreeEnv удаляет заданный хэндл и освобождает всю память, ассоциированную с ним.
Пример 3: Как все это собрать воедино и использовать в программе
Здесь кода не будет, здесь будет описание. Итак, у нас есть программа, которой нужно "присоединиться" к базе Microsoft Access, лежащей совсем рядом, в текущем каталоге. На машине пользователя нам не нужно ничего, кроме стандартного набора bpl и BDE. Но - теперь не нужны SQL Links, можно использовать, например, Install Shield, можно взять отдельный дистрибутив BDE. Поехали:
1. На основную форму проекта кидаем компоненту TDatabase. Устанавливаем ее свойства: LoginPrompt - false, DatabaseName - dbMain, AliasName - c2a (имя источника данных ODBC). Во всех компонентах TQuery или TTable свойство Database Name будет равно dbMain. Конечно, можно не использовать компоненту TDatabase, а в TQuery или TTable прямо указывать имя источника данных ODBC, но представьте, если вы написаи проект формочек на двадцать-тридцать, а потом решили, что имя источника 'MySuperDSN' не в полной мере отражает всю вашу крутость :-) Изменять свойство у полусотни компонент - очень муторное занятие, поверьте.
2. В конструкторе основной формы прописываем код примера №1, вставляя на место комментария следующий код:
а после цикла - такой фрагмент:
3. Функция NewDSN() полностью повторяет код примера №2.
Теперь при первом запуске программы будет создан источник данных ODBC Microsoft Access с именем c2a, ссылающийся на файл db1.mdb, лежащий в том же каталоге, что и программа.
4. На всякий непредвиденный случай (если вы переместили программу в другой каталог, поменялась буква диска или сетевое имя, где лежит база данных) можно в программе предусмотреть немедленное перезаписывание DSN по горячей клавише, что-то типа такого:
коннект не подымается , пишет SQLException не найдена база , сама же база при этом ложилась и в корень src и webContent т.е. в моём понимании эти папки включены в classPath по-дефолту, не понятно почему тогда бд не видна.
( в web.xml добавленно)
В итоге наверняка проблема с classPath но не соображу , что не так , почему обычные классы в war-ке не видят того , что в итоге попадает в папку classesДобавлено через 8 часов 19 минут
вопрос решился исправлением url в context.xml на
для eclipseЗаполнение Combobox через DataSource
Не могу запомнить индекс combobox так, чтобы пользователю при следующем сеансе работы не пришлось.Сохранение данных в XML файл через datasource
Привет, всем! У меня такой вопрос: как можно сохранить данные в форме(xml файла) приложения Windows.Через какие интерфейсы сделать свой DataSource?
Люди подскажите через какие интерфейсы (IList, IBindingList и куча других) сделать свой сточник.Пустые строки при заполнении DataGridView через DataSource
Пытаюсь заполнить DataGridView через DataSource из BindingList. Код создает нужные столбцы.Изменить цвет строк DataGridView при заполнении через DataSource
Добрый день. На форме размещен DataGridView, который заполняется через привязку данных из.Как подключить базу даных через: ADOConnection + ADOQuery + DataSource + BDGrid?
Как подключить базу даных через:ADOConnection+ADOQuery+DataSource+BDGrid. Подскажите пожалуйста.Подключение к серверу через удалённое подключение к рабочему столу из интернета
Поставил Windows Server 2016 на машину. запустил. Создал пользователей. Разрешил подключение к.Подключение к облаку через подключение сетевого диска в проводнике - не работает
Всех приветствую, имеется Windows 7x64 Corporate, хочу подключиться к облакам яндекса и мэйла все.WinSock - подключение к Серверу TCP (подключенный через РОУТЕР) через интернет
Всем привет! Я не ожидаю честно говоря, что я решу данную проблему.. Но вопрос вследующем: .Подключение сетевого диска через VPN для сети через прокси
Приветствую! Имеется две сети в разных городах(одна тут, другая там). Связь между нами через VPN. В.Я пытаюсь объявить источник данных Spring, указывающий на базу данных DB2. В настоящее время я использую org.springframework.jdbc.datasource.DriverManagerDataSource для настройки соединения, но не нахожу способа указать схему базы данных в базе данных в bean-компоненте источника данных. Может ли кто-нибудь помочь мне в этом?
Проблема в том, что нет стандартного способа установить схему, каждая база данных имеет свой механизм.
Обходной путь - установить схему как часть URL-адреса БД.
Для db2 URL-адрес будет выглядеть примерно так:
надеюсь, это поможет.
Невозможно сделать это со стандартным пространством имен Spring. Ответ Роба Харропа на запрос добавить схему в конфигурацию:
In general, this kind of functionality should be pushed into the connection pool since there is no really elegant and performant way to do this via a decorator. The pool can set the schema once per connection it creates, whereas here you have to set it each time a connection is retrieved.
Если вы отчаянно пытаетесь установить прокси-сервер в своей конфигурации, отправитель включил некоторый код для прокси-сервера, позволяющий указать схему.
Значит ли это, что схема может быть указана только для пула, как при использовании c3p0. Потому что я не смог найти никаких ресурсов для указания схемы при использовании пула соединений c3p0.
Я думаю, что «пул соединений» в данном случае означает сервер приложений, который вы используете: WebLogic, JBOSS, Glassfish, Tomcat, Jetty или, не дай Бог, WebSphere.
Если ваше соединение использует владельца схемы в качестве пользователя, то это соединение будет указывать на эту конкретную схему. т.е. Если пользователь user1 является владельцем схемы базы данных с именем schema1, то если вы подключаетесь к базе данных с помощью пользователя user1, то по умолчанию соединение будет указывать на schema1.
Мы использовали UserCredentialsDataSourceAdapter, предоставленный Spring, для подключения к различным схемам на основе вошедшего в систему пользователя. Это обеспечивает источник данных, который указывает на конкретную схему на основе пользователя. Это использует информацию для входа на основе потока. Каждый поток должен решить, к какой схеме он должен подключиться, и в соответствии с этим предоставить пользователю.
Прежде всего, давайте рассмотрим принцип работы JDBC:
1. Загрузите драйвер базы данных, настроенный через classpath.
2. Получите объект подключения к базе данных через класс DriverManager.
3. Создайте экземпляры объектов PreparedStatement через соединение и напишите команды SQL для управления базой данных.
4. База данных является операцией с ресурсами.После завершения операции базу данных необходимо закрыть, чтобы освободить ресурсы.
Примечание. Для подключения к базе данных необходимо установить несколько подключений: при использовании JDBC для подключения к базе данных программа будет выполнять несколько операций подключения через сокеты, поэтому производительность этой традиционной операции с базой данных очень низка.
Поскольку каждый пользователь будет выполнять три вышеуказанных шага (1, 2, 4) при выполнении операций с базой данных, операции каждого пользователя с базой данных различны, например, некоторые обновляют базу данных, некоторые запрашивают базу данных, поэтому в Если при выполнении операций с базой данных вы можете пропустить три повторяющихся шага и оставить только шаг 3, то производительность определенно улучшится, что на самом деле является причиной источника данных.
Ядро операции с источником данных заключается в хранении нескольких подключений к базе данных в пуле объектов (также известном как пул подключений к базе данных, пул подключений), так что, когда операция с базой данных выполняется позже, подключение напрямую удаляется из пула подключений, а когда операция базы данных завершается После этого поместите это соединение обратно в пул соединений с базой данных и дождитесь, пока другие пользователи продолжат его использовать. Это похоже на текущие общие велосипеды. Количество велосипедов, размещаемых в зоне, ограничено. Когда мы хотим использовать его, мы можем напрямую сканировать код, чтобы разблокировать и использовать его. Когда мы его используем, мы закроем замок и оплатим проезд. Чтобы ездить на велосипеде, нужно только ждать, пока его воспользуют другие.
В источнике данных есть несколько элементов:
(1) Минимальное количество подключений: если программа используется без подключения пользователя, минимальное количество подключений к базе данных, которое должна поддерживать база данных.
(2) Максимальное количество подключений: максимальное количество подключений к базе данных, которые база данных может открыть в программе.
(3) Максимальное время ожидания: когда в пуле подключений к базе данных нет свободных подключений к базе данных, доступных для использования пользователями, максимальное время ожидания других пользователей. Если есть подключения, которые свободны в течение времени ожидания, они могут продолжать использоваться; если максимальное время ожидания превышено Время, пользователь не может получить соединение с базой данных.
Такую программу можно реализовать с помощью прикладной программы Java. Сначала сохраните несколько объектов подключения к базе данных в наборе классов, а затем добейтесь реализации функции пула подключений через набор классов управления, но этот вид реализации должен учитывать проблему многопоточности, а также три указанных выше. Проблему тоже нужно учитывать. Ее сложно реализовать. К счастью, эта операция была поддержана после Tomcat 4.1x. Поэтому в веб-разработке вы можете напрямую реализовать функцию пула соединений с базой данных через Tomcat.
Компоненты пула соединений с базой данных: если вы не используете Tomcat для реализации пулов соединений с базами данных, вы также можете искать различные компоненты пула соединений с базой данных из Интернета для реализации программных функций, таких как компонент C3P0, организованный Apache.
2. Используйте пул соединений с базой данных в Tomcat.
В веб-контейнере доступ к пулу соединений с базой данных осуществляется через источник данных (javax.sql.DataSource), то есть объект Connection можно получить через класс javax.sql.DataSource, но для получения объекта DataSource необходимо использовать JNDI для поиска.
Сервис JNDI:
JNDI (Java Naming and Directory Interface, Java Naming and Directory Interface) - это сервис, предоставляемый javaEE. Основная функция сервиса - найти соответствующее «значение» объекта с помощью имени «ключ». Этот дизайн также отражает Концепция дизайна java-программы заключается в том, что ключ соответствует значению. Пока ключ не изменяется, значение можно изменять по желанию.
Из рисунка видно, что клиент получает объект DataSource, запрашивая имя, привязанное к JNDI, и получает соединение с базой данных, хранящееся в пуле соединений, через DataSource.
Примечание. В настоящее время пул соединений с источником данных настроен на Tomcat, поэтому необходимо скопировать драйвер базы данных в папку% TOMCAT_HOME% \ common \ lib.
Настройте пул подключений к базе данных в файле server.xml -% TOMCAT_HOME% \ conf \ server.xml
Примечание. Приведенные выше примечания предназначены только для объяснения каждого элемента и должны быть удалены при его использовании. Кроме того, путь к docBase должен быть путем к веб-проекту.
Вышеупомянутая конфигурация добавляет узел к узлу , чтобы указать настроенный параметр пула соединений, где атрибут name указывает имя источника данных, здесь это "jdbc / mydb", который также является Имя, которое нужно искать при доступе к ресурсам базы данных в будущих программах.
Параметр auth в узле указывает метод подключения к базе данных. Есть два варианта:
Контейнер: контейнер будет регистрироваться в диспетчере ресурсов от имени приложения. Обычно этот метод используется.
Приложение: приложение должно программно войти в диспетчер ресурсов.
Совет: Относительно соглашений об именовании имен источников данных == "Во время разработки JNDI можно использовать для запроса нескольких ресурсов. Для ясности в источнике данных, используемом для доступа к базе данных, вы можете использовать форму именования jdbc / XXX, которая может быть напрямую По названию узнайте, что это именованный ресурс для работы с базой данных.
Для настроенного выше драйвера базы данных MySql, если вы хотите использовать Oracle, вам нужно только заменить соответствующее содержимое атрибута.
После завершения настройки server.xml вам нужно настроить файл web.xml в веб-проекте и указать имя источника данных, который будет использоваться в файле:
3. Найдите источник данных.
Источник данных использует JNDI для поиска, поэтому, если вы используете источник данных для подключения к базе данных, вы должны выполнить следующие шаги:
1. Инициализируйте контекст поиска имени: Context ctx = new InitialContext ();
2. Найдите объект DataSource (источник данных) по имени: DataSource ds = (DataSource) cxt.lookup (имя JNDI);
3. Получите соединение с базой данных через DataSource: Connection conn = ds.getConnection ();
Пример: получить соединение с базой данных через data source-datasource.jsp
В этой программе можно обнаружить, что хотя имя источника данных, фактически настроенное в server.xml, является «jdbc / mydb», когда оно фактически используется, префикс «java: comp / env /» добавляется впереди, что на самом деле Контекст именования среды (Контекст именования среды (ENC)), указанный javaEE, в основном предназначен для решения проблемы конфликта во время поиска JNDI.
Примечание. Свойства java: comp / env / environment не обязательно используются везде == "Для некоторых расширенных серверов (таких как WebLogic, Websphere) это свойство уже установлено, поэтому нет необходимости устанавливать это свойство при поиске источников данных. , Но должен быть установлен для Tomcat, иначе его нельзя будет найти.
Вышеупомянутая программа напрямую распечатывает объект Connection, если соединение может быть получено, она выведет информацию об объекте; если соединение не получено, она напечатает null.
В будущем вы можете напрямую применить источник данных к проекту.Например, класс DatabaseConnection, который часто используется при разработке DAO, можно заменить подключением к источнику данных.
Измените DatabaseConnection.java в DAO:
Текущая программа, пока имя источника данных остается неизменным, база данных может быть изменена произвольно, что также полностью отражает философию дизайна java-переносимости.
В случае сетевого подключения соответствующий пакет jar будет автоматически загружен, а сети нет, и его необходимо импортировать локально (здесь нет демонстрации).Как и в IDEA, настройка настраивается, и источник тот же, с небольшой разницей (в основном настройка не требуется).
Если вы не использовали IDEA для разработки java, советую быть хорошим (смешно вручную)
(Это резюме относится к версии 2016.2, без существенных отличий)
Далее воспользуемся DataGrip выполняет общие операции с базой данных, включая запросы данных, изменение данных, создание баз данных, таблиц и т. Д.
Щелкните правой кнопкой мыши выбранное соединение с базой данных и выберите Откройте консоль, вы можете писать операторы SQL в консоли справа.
Интеллектуальное приглашение DataGrip очень круто. Будь то стандартные ключевые слова sql, имена таблиц, имена полей или даже поля, специфичные для базы данных, оно может запрашивать. Я должен вздохнуть, что это умное приглашение слишком мощное. Интеллектуальное приглашение Intellij IDEA также убивает eclipse. .
Законченный После оператора sql вы можете выбрать его и выполнить с помощью зеленой стрелки в верхнем левом углу электронного
Результат выполнения оператора отображается внизу
Также очень удобно добавлять и удалять строки, верхняя часть Кнопки + и - могут напрямую добавлять строки или удалять выбранные строки. Редактирование столбцов также очень удобно. Дважды щелкните столбец, который нужно изменить, введите измененное значение и щелкните мышью по другим частям, чтобы завершить изменение
Иногда нам нужно установить для поля значение null вместо пустой строки "". DataGrip также обеспечивает операцию градиента. Щелкните столбец правой кнопкой мыши и выберите "Установить значение null"
Для тех, кому нужно просматривать результаты в нескольких окнах, то есть если вы хотите, чтобы результаты запроса отображались на новой вкладке, вы можете щелкнуть кнопку с закрепленной вкладкой, и новый запрос не будет отображаться на текущей вкладке, но будет открыта новая вкладка.
рядом, поблизости Консоль вывода отображает информацию журнала выполнения SQL, и вы можете видеть такую информацию, как время выполнения SQL.
Я просто спросил, кто еще такой подвесной инструмент! ! !Создать новую таблицу довольно просто и умно, выберите подключение к базе данных, нажмите зеленую кнопку Выберите таблицу под знаком +. В открывшемся окне вы можете заполнить информацию о таблице.
Я спрошу вас, рады ли вы видеть это окно! ! !
Все эти операции DDL будет отображаться прямо внизу
Я спрошу если ты боишьсяПосле того, как таблица построена, вы можете нажать на значок таблицы, откройте представление таблицы
Вы можете просматривать данные в таблице, а также можете просмотреть оператор DDLВыберите таблицу, в которую нужно экспортировать данные, щелкните правой кнопкой мыши, дамп данных в файл
То есть вы можете экспортировать операторы SQL в форме вставки и обновления, а также данные в форматах html, csv и json.Также можно экспортировать в режиме просмотра результатов запроса
Щелкните значок загрузки в правом верхнем углу, и вы можете выбрать различные методы экспорта во всплывающем окне, такие как вставка sql, обновление sql, формат csv и т. д.
Если вы экспортируете в формат csv, вы также можете контролировать формат экспорта
Это результат открытия в Excel после экспорта.
Помимо экспорта данных, вы также можете импортировать данные
Выберите таблицу, щелкните правой кнопкой мыши -> Импортировать из файла, выберите файл для импорта
Обратите внимание, что если два параметра заголовка слева проверены при экспорте, если при импорте есть заголовок, также проверьте его, иначе количество столбцов не будет совпадать.1. Навигация по ключевым словам:
При написании sql в области редактирования текста datagrip нажмите и удерживайте клавишу Ctrl на клавиатуре, перемещая мышь к ключевому слову sql, например к имени таблицы, имени поля или имени функции, мышь станет типом руки, ключевым словом Он станет синим и подчеркнутым, щелкните, он автоматически найдет дерево объектов слева и выберет объект, по которому щелкнули
2. Быстро переходите к указанной таблице, представлению, функции и т. д .:В datagrip используйте комбинацию клавиш Ctrl + N, чтобы открыть окно поиска, введите имя, необходимое для навигации, и нажмите Enter.
3. Глобальный поискДважды нажмите клавишу Shift или щелкните значок поиска в правом верхнем углу мыши, появится всплывающее окно поиска и выполните поиск всего, что вы хотите.
4. Поиск набора результатовЩелкните мышью в области просмотра набора результатов запроса, нажмите сочетание клавиш Ctrl + F, появится окно поиска, введите поисковый контент, поддержите регулярные выражения, отфильтруйте результаты
5. Перейдите к связанным данным.
Между таблицами будут существовать связи внешней проверки. При запросе вы можете напрямую найти связанные данные или связанные данные. Например, в таблице user1 есть поле внешней проверки classroom, указывающее на идентификатор первичного ключа таблицы classroom. При запросе данных таблицы classroom вы можете Щелкните правой кнопкой мыши поле идентификатора, перейдите к, ссылаясь на данные
Выберите, следует ли отображать первые данные или все данные
автоматически откроет данные в связанной таблице
Напротив, при запросе данных таблицы слов он также может автоматически найти родительскую таблицу6, фильтрация данных набора результатов
Для набора результатов, открытого с помощью редактирования таблицы (выберите таблицу в дереве объектов, щелкните правой кнопкой мыши -> редактор таблицы), вы можете продолжить фильтрацию набора результатов с использованием условий, как показано на рисунке ниже, вы можете ввести фильтр условия where в разделе ввода в верхнем левом углу набора результатов
Вы также можете щелкнуть правой кнопкой мыши столбец, который должен фильтровать данные, фильтровать по
7, строка в столбец
Для таблиц с большим количеством полей вам нужно нажимать влево и вправо для просмотра данных, вы можете переключиться на отображение столбцов, используйте сочетание клавиш Ctrl + Q в области просмотра набора результатов
Выберите один идентификатор для просмотра части данных (отображение столбца), после выбора всех нажмите сочетание клавиш, чтобы просмотреть все (отображение столбца).
datagrip предоставляет мощный редактор, который реализует режим редактирования столбцов notpad ++.
1. Режим нескольких курсоров
При редактировании sql вам может потребоваться ввести или удалить несколько символов одновременно, нажать alt + shift и щелкнуть мышью в разных позициях одновременно, появится несколько курсоров
2, комментарий кодаВыберите код для аннотирования и нажмите сочетание клавиш Ctrl + / или Ctrl + shift + /, чтобы прокомментировать код или отменить комментарий.
3. Редактирование столбцаНажмите и удерживайте клавишу Alt на клавиатуре, удерживая нажатой левую кнопку мыши для перетаскивания, вы можете выбрать несколько столбцов, скопировать и вставить и т. Д.
В текстовом редакторе, почте, локальной истории, показать историю, вы можете просмотреть историю использованных SQL
История командНаконец, позвольте мне рассказать о плане выполнения, который меня больше всего беспокоит.
Щелкните правой кнопкой мыши свой sql в консоли
В яркой части значка ниже можно увидеть два варианта:
Первый план объяснения генерирует план выполнения, как показано на вкладке paln на рисунке ниже.
Второй план объяснения (необработанный) показан ниже.
Экспорт в excel (при условии, что mysql установлен локально)
1. Щелкните экспортированную базу данных правой кнопкой мыши и выберите дамп с mysqldump.
2. Настройте путь к mysqldump как к файлу mysqldump в каталоге bin mysql.
3. выходной путь - это каталог файлов, который вы хотите вывести, и вам нужно создать файл, например /Users/beliefx/data/aa.sql
Читайте также: