BULK INSERT [dbo].[sharyo_idx]
FROM 'd:\sharyo_idx.txt'
MYSQL error: Duplicate entry ' ' for key 1
CREATE TABLE Product_Types(prod_type_id integer NOT NULL PRIMARY KEY,
prod_type_name char(40) NOT NULL)
с помощью
INSERT INTO Product_Types VALUES ($i,'$cur_name')
$i увеличиваю на 1, а $cur_name беру из файла
выдается ошибка:
Duplicate entry '1' for key 1
Duplicate entry '2' for key 1
Duplicate entry '3' for key 1
Duplicate entry '4' for key 1
Duplicate entry '5' for key 1
Duplicate entry '6' for key 1
Duplicate entry '7' for key 1
Duplicate entry '8' for key 1
и так далее. Тако ощущение что пытается перезаписать это в одну и ту же строку. Подскахите, пожалуйста где я допустил ошибку.
разобрался сам :cool: извините, что зря потревожил :o
т.е. нельзя дублировать значения в этом столбце
Цитата: Valiant
Prymary key подобен unique с небольшими различиями.
т.е. нельзя дублировать значения в этом столбце
т.е. нельзя дублировать значения в этом столбце
Различие в том, что в PRIMARY_KEY запрещена вставка NULL. В связи с чем запись у автора
prod_type_id integer NOT NULL PRIMARY KEY
является избыточной)
Цитата: Ora-cool
Различие в том, что в PRIMARY_KEY запрещена вставка NULL. В связи с чем запись у автора
prod_type_id integer NOT NULL PRIMARY KEY
является избыточной)
prod_type_id integer NOT NULL PRIMARY KEY
является избыточной)
Не только. Таблица может иметь только один PRIMARY KEY, в отличие от UNIQUE.
Вторым отличием является как раз указанный Вами запрет вставки значиния типа NULL.
Здесь есть только одно исключение для таблиц BDB. Этот тип позволяет вставлять только одно значение NULL.
Есть таблица dbo.sharyo_idx с единственным полем VIN (nchar(17)) (которое PK).
Делаю простенький импорт:
Код:
В файле импорта заведомо содержаться дубли. Естественно, срывается.
Вопрос: Как, таки, загрузить таблицу только уникальными значениями?
З.Ы. Курю SQL Server 2005 BOL, но что-то найти нефига не могу...
Цитата: Lerkin
А вот такая задача:
Есть таблица dbo.sharyo_idx с единственным полем VIN (nchar(17)) (которое PK).
Делаю простенький импорт:
В файле импорта заведомо содержаться дубли. Естественно, срывается.
Вопрос: Как, таки, загрузить таблицу только уникальными значениями?
З.Ы. Курю SQL Server 2005 BOL, но что-то найти нефига не могу...
Есть таблица dbo.sharyo_idx с единственным полем VIN (nchar(17)) (которое PK).
Делаю простенький импорт:
Код:
BULK INSERT [dbo].[sharyo_idx]
FROM 'd:\sharyo_idx.txt'
FROM 'd:\sharyo_idx.txt'
В файле импорта заведомо содержаться дубли. Естественно, срывается.
Вопрос: Как, таки, загрузить таблицу только уникальными значениями?
З.Ы. Курю SQL Server 2005 BOL, но что-то найти нефига не могу...
через временную таблицу, где поле будет не уникальным, затем SELECT DISTINCT INTO sharyo_idx
Цитата: oxotnik333
через временную таблицу, где поле будет не уникальным, затем SELECT DISTINCT INTO sharyo_idx
Согласен самый реальный вариант