#mysql #sql-server
#mysql #sql-сервер
Вопрос:
У меня есть запрос для оператора Create, который отлично работает в моем SQL Yog. Но он выдает ошибки, когда я запускаю MS SQL Server Management Studio.
Мой оператор SQL Create выглядит следующим образом: —
CREATE TABLE IF NOT EXISTS `countries` (
`COUNTRY_ID` varchar(2) NOT NULL,
`COUNTRY_NAME` varchar(40) DEFAULT NULL,
`REGION_ID` decimal(10,0) DEFAULT NULL,
PRIMARY KEY (`COUNTRY_ID`),
KEY `COUNTR_REG_FK` (`REGION_ID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
каков эквивалентный запрос в SQL server Management Studio.
Комментарии:
1. msdn.microsoft.com/en-us/library/ms174979.aspx
2. Есть ли инструмент, который преобразует его из My SQL в MS SQL?
3. Я думаю, что SQL Server не понимает
ENGINE=MyISAM
, и я не уверен, знает ли онIF NOT EXISTS
.4. @Keynes Online Converter
5. @Keynes, я не могу ручаться за его надежность; но за небольшое количество раз, когда я конвертировал относительно небольшие и простые специальные скрипты, он работал нормально. Рассматривайте его таким, какой он есть, бесплатный онлайн-инструмент с неизвестной достоверностью. Я уверен, что вы можете найти больше корпоративных решений, если готовы платить.
Ответ №1:
Попробуйте это
CREATE TABLE countries
(
COUNTRY_ID varchar(2) PRIMARY KEY,
COUNTRY_NAME varchar(40) DEFAULT NULL,
REGION_ID decimal(10,0) DEFAULT NULL
)
Ответ №2:
CREATE TABLE countries (
country_id CHAR (2) PRIMARY KEY,
country_name VARCHAR (40) DEFAULT NULL,
region_id INT NOT NULL,
FOREIGN KEY (region_id) REFERENCES regions (region_id) ON DELETE CASCADE ON UPDATE CASCADE
);