sql- все статьи тега ➜ страница 16
Список всех таблиц в информационной схеме postgresql
Что является лучшим способом, чтобы получить список всех таблиц в information_schema Для в PostgreSQL? чтобы уточнить: я работаю с пустой БД (я не добавил ни одной из моих собственных таблиц), но я хочу видеть каждую таблицу в структуре information_schema. ...
SQL обновляет все значения в поле с добавленной строкой CONCAT не работает
вот что я хочу сделать: текущая таблица: +----+-------------+ | id | data | +----+-------------+ | 1 | max | | 2 | linda | | 3 | sam | | 4 | henry | +----+-------------+ Тайна запроса ( что-то вроде "UPDATE table SET data = CONCAT(data, 'a')") результирующая таблица: +----+-------------+ | id | data | +----+-------------+ | 1 | maxa | | 2 | lindaa | | 3 | sama | | 4 | henrya | +----+- ...
Импорт CSV-файла в SQL Server
Я ищу помощь для импорта .csv файл в SQL Server с помощью BULK INSERT и у меня есть несколько основных вопросов. вопросы: данные файла CSV могут иметь , (запятая) между ними (например, описание), так как я могу импортировать эти данные? если клиент создает CSV из Excel, то данные, которые имеют запятую, заключены в "" (двойные кавычки) [как в примере ниже] так как импорт может справиться с этим? как мы отслеживаем, если некоторые строки имеют плохие данные, которые пропускают импорт? (дел ...
SQL Server NOLOCK и соединения
фон: у меня есть критический для производительности запрос, который я хотел бы запустить, и мне плевать на грязные чтения. мой вопрос: если я использую соединения, должен ли я указать подсказку NOLOCK на них? например; is: SELECT * FROM table1 a WITH (NOLOCK) INNER JOIN table2 b WITH (NOLOCK) ON a.ID = b.ID эквивалентно: SELECT * FROM table1 a WITH (NOLOCK) INNER JOIN table2 b ON a.ID = b.ID или мне нужно будет указать (NOLOCK) намек на соединение, чтобы убедиться, что я не блокирую прис ...
Могу ли я защитить от SQL-инъекции, экранируя одинарные кавычки и окружающий пользовательский ввод с помощью одинарных кавычек?
Я понимаю, что параметризованные SQL-запросы-это оптимальный способ очистки пользовательского ввода при создании запросов, содержащих пользовательский ввод, но мне интересно, что не так с пользовательским вводом и экранированием любых одинарных кавычек и окружением всей строки одинарными кавычками. Вот код: sSanitizedInput = "'" & Replace(sInput, "'", "''") & "'" любая одинарная кавычка, которую вводит пользователь, заменяется двойными одинарными кавычками, что исключает возможность ...
Как выбрать несколько строк, заполненных константами?
выбор констант без ссылки на таблицу является совершенно законным в инструкции SQL: SELECT 1, 2, 3 следствием установлено, что последний возвращает одну строку, содержащую значения. Мне было интересно, есть ли способ выбрать несколько строк сразу, используя постоянное выражение, что-то вроде: SELECT ((1, 2, 3), (4, 5, 6), (7, 8, 9)) Я хотел бы что-то вроде выше, что работает и возвращает результирующий набор с 3 строками и 3 столбцами. ...
В чем разница между Scope Identity(), Identity(), @@Identity и Ident Current()?
Я знаю Scope_Identity(),Identity(),@@Identity и Ident_Current() все получают значение столбца идентификаторов, но я хотел бы знать разницу. часть спора, который у меня есть, - это то, что они подразумевают под областью действия применительно к этим функциям выше? Я также хотел бы простой пример различных сценариев их использования? ...
В чем разница между NOT EXISTS и NOT IN и LEFT JOIN, где NULL?
Мне кажется, что вы можете сделать то же самое в SQL-запросе, используя либо NOT EXISTS, NOT IN, либо LEFT JOIN, где NULL. Например: SELECT a FROM table1 WHERE a NOT IN (SELECT a FROM table2) SELECT a FROM table1 WHERE NOT EXISTS (SELECT * FROM table2 WHERE table1.a = table2.a) SELECT a FROM table1 LEFT JOIN table2 ON table1.a = table2.a WHERE table1.a IS NULL Я не уверен, если я получил все правильный синтаксис, но это общие методы, которые я видел. Почему я должен использовать один над др ...
Имя таблицы в качестве переменной
Я пытаюсь выполнить этот запрос: declare @tablename varchar(50) set @tablename = 'test' select * from @tablename это приводит к следующей ошибке: Msg 1087, Уровень 16, Состояние 1, Строка 5 необходимо объявить переменную таблицы "@tablename". Как правильно заполнить имя таблицы динамически? ...
SQL для определения минимальных последовательных дней доступа?
следующая таблица истории пользователей содержит одна запись за каждый день, когда данный пользователь получил доступ к веб-сайту (в 24-часовой период UTC). Он имеет много тысяч записей, но только одну запись в день на одного пользователя. Если пользователь не заходил на сайт в течение этого дня, запись не будет создана. Id UserId CreationDate ------ ------ ------------ 750997 12 2009-07-07 18:42:20.723 750998 15 2009-07-07 18:42:20.927 751000 19 2009-07-07 18:42 ...
Является ли SQL или даже TSQL Turing полным?
Это произошло сегодня в офисе. У меня нет планов делать такие вещи, но теоретически вы могли бы написать компилятор в SQL? На первый взгляд это кажется мне полным Тьюрингом, хотя и чрезвычайно громоздким для многих классов проблем. Если это не Тьюринг полный, что бы это потребовало, чтобы стать так? Примечание: у меня нет желания делать что-либо вроде написания компилятора в SQL, я знаю, что это было бы глупо, поэтому, если мы сможем избежать этого обсуждения Я был бы вам очень признателен ...
Изменить имя схемы таблицы в SQL
Я хочу изменить имя схемы таблицы Employees в базе данных. В текущей таблице Employees имя схемы базы данных dbo Я хочу изменить его на exe. Как я могу это сделать ? пример: С dbo.Employees до exe.Employees Я попытался с этим запросом: ALTER SCHEMA exe TRANSFER dbo.Employees но это дает мне ошибку: не удается изменить схему "exe", потому что она не существует или вы не делаете иметь разрешение. что я пропустил? ...
Почему люди так сильно ненавидят курсоры SQL? [закрытый]
Я могу понять желание избежать использования курсора из-за накладных расходов и неудобств, но похоже, что есть какая-то серьезная курсор-фобия-мания, когда люди идут на большие расстояния, чтобы избежать использования одного. например, один вопрос спросил, Как сделать что-то явно тривиальное с курсором и принятый ответ предложил использовать рекурсивный запрос common table expression (CTE) с рекурсивной пользовательской функцией, хотя это ограничивает число строк, которые могут быть обработаны ...
Как использовать инструкцию SQL Order By для сортировки результатов без учета регистра?
У меня есть база данных SQLite, что я пытаюсь отсортировать по алфавиту. Проблема в том, что SQLite, похоже, не рассматривает a=a во время сортировки, поэтому я получаю такие результаты: A Б С Т один б с g Я хочу сделать: A один б Б С с г Т какая специальная вещь SQL должна быть сделана, о которой я не знаю? SELECT * FROM NOTES ORDER BY title ...
Объект 'DF *' зависит от столбца ' * ' - изменение int на double
в основном я получил таблицу в моей базе данных EF со следующими свойствами: public int Id { get; set; } public string Title { get; set; } public string Description { get; set; } public string Image { get; set; } public string WatchUrl { get; set; } public int Year { get; set; } public string Source { get; set; } public int Duration { get; set; } public int Rating { get; set; } public virtual ICollection<Category> Categories { get; set; } он отлично работает, однако, когда я изменяю int ...
Хранение пола (гендера) в базе данных
Я хочу сохранить пол пользователя в базе данных с как можно меньшей стоимостью (размер/производительность). до сих пор, 3 сценария приходят на ум Int -выравнивается с перечислением в коде (1 = Мужчина, 2 = Женщина, 3 = ...) char (1) -магазине m,f или другой односимвольный идентификатор немного(логический) - есть ли подходящее имя поля для этой опции? Почему я спрашиваю из-за этого ответ в котором упоминается, что chars are меньше чем логические. Я должен уточнить, что я использую MS ...
создание дней из диапазона дат
Я хотел бы запустить запрос, как select ... as days where `date` is between '2010-01-20' and '2010-01-24' и возвращать данные, такие как: days ---------- 2010-01-20 2010-01-21 2010-01-22 2010-01-23 2010-01-24 ...
Замена NULL на 0 в запросе SQL server
Я разработал запрос, и в результатах для первых трех столбцов я получаю NULL. Как я могу заменить его на 0? Select c.rundate, sum(case when c.runstatus = 'Succeeded' then 1 end) as Succeeded, sum(case when c.runstatus = 'Failed' then 1 end) as Failed, sum(case when c.runstatus = 'Cancelled' then 1 end) as Cancelled, count(*) as Totalrun from ( Select a.name,case when b.run_status=0 Then 'Failed' when b.run_status=1 Then 'Succeeded' when b.run_status=2 Then 'Re ...
Эффективный тестовый запрос SQL или запрос проверки, который будет работать во всех (или большинстве) баз данных
многие библиотеки пулов соединений с базами данных предоставляют возможность тестировать свои SQL-соединения на бездействие. Например, библиотека пулов JDBC c3p0 есть свойство под названием preferredTestQuery, который выполняется на соединении с заданными интервалами. Аналогично, Apache Commons DBCP имеет validationQuery. много примерзапросы Я видел для MySQL и рекомендую использовать SELECT 1; Как значение для тестовый запрос. Однако этот запрос не работает на некоторых базах данных (например, ...
Нельзя просто использовать имя таблицы PostgreSQL ("отношение не существует")
Я пытаюсь запустить следующий PHP-скрипт для выполнения простого запроса к базе данных: $db_host = "localhost"; $db_name = "showfinder"; $username = "user"; $password = "password"; $dbconn = pg_connect("host=$db_host dbname=$db_name user=$username password=$password") or die('Could not connect: ' . pg_last_error()); $query = 'SELECT * FROM sf_bands LIMIT 10'; $result = pg_query($query) or die('Query failed: ' . pg_last_error()); это приводит к следующей ошибке: ошибка запроса: ошибка ...