Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un script
MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT '0'
NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 : Incorrect
Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un script
MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT '0'
NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 : Incorrect
Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un script
MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT '0'
NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 : Incorrect
Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
Notes :
SQL est un langage reposant sur une norme. MS SQL Server est très proche
de la norme. MySQL en est loin !
1) MEDIUMINT n'existe pas en SQL
2) on ne précise jamais de longueur sur un type entier. Ainsi INTEGER (8)
n'a aucun sens.
3) IDENTITY est le mot clef pour un auto incrément interne (depuis norme
2003)
4) TINYINT existe en MS SQL Server mais pas dans la norme
5) la contrainte NOT NULL doit suivre le type de données dans la
définition de la colonne
6) une expression de valeur pour un type numériqaue s'écrit sans
apostrophes de délimitation
7) TEXT existe en MS SQL Server mais pas dans la norme (CLOB)
8) une contrainte de table doit être nommée
9) le séparateur d'ordre SQL dans un batch est l'instruction GO qui
s'adresse à l'outil (parser)
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
A +
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Arnold a écrit:Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un script
MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT
'0' NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 :
Incorrect Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
Notes :
SQL est un langage reposant sur une norme. MS SQL Server est très proche
de la norme. MySQL en est loin !
1) MEDIUMINT n'existe pas en SQL
2) on ne précise jamais de longueur sur un type entier. Ainsi INTEGER (8)
n'a aucun sens.
3) IDENTITY est le mot clef pour un auto incrément interne (depuis norme
2003)
4) TINYINT existe en MS SQL Server mais pas dans la norme
5) la contrainte NOT NULL doit suivre le type de données dans la
définition de la colonne
6) une expression de valeur pour un type numériqaue s'écrit sans
apostrophes de délimitation
7) TEXT existe en MS SQL Server mais pas dans la norme (CLOB)
8) une contrainte de table doit être nommée
9) le séparateur d'ordre SQL dans un batch est l'instruction GO qui
s'adresse à l'outil (parser)
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
A +
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Arnold a écrit:
Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un script
MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT
'0' NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 :
Incorrect Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
Notes :
SQL est un langage reposant sur une norme. MS SQL Server est très proche
de la norme. MySQL en est loin !
1) MEDIUMINT n'existe pas en SQL
2) on ne précise jamais de longueur sur un type entier. Ainsi INTEGER (8)
n'a aucun sens.
3) IDENTITY est le mot clef pour un auto incrément interne (depuis norme
2003)
4) TINYINT existe en MS SQL Server mais pas dans la norme
5) la contrainte NOT NULL doit suivre le type de données dans la
définition de la colonne
6) une expression de valeur pour un type numériqaue s'écrit sans
apostrophes de délimitation
7) TEXT existe en MS SQL Server mais pas dans la norme (CLOB)
8) une contrainte de table doit être nommée
9) le séparateur d'ordre SQL dans un batch est l'instruction GO qui
s'adresse à l'outil (parser)
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
A +
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Arnold a écrit:Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un script
MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT
'0' NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 :
Incorrect Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
Bonsoir et merci pour votre réponse !
Voila jai testé en copiant exactement ça :
---------------------------------------------------------
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
------------------------------------------------------
Résultat de SQL Server :
Impossible de terminer la préparation différée :
Line 18 : incorrect syntax near 'GO'
Line 14 : incorrect syntax near 'GO'
Incorrect Syntax near the keyword 'ALTER'
Une idée ?
Merci !
"Fred BROUARD" a écrit dans le message de news:Notes :
SQL est un langage reposant sur une norme. MS SQL Server est très proche
de la norme. MySQL en est loin !
1) MEDIUMINT n'existe pas en SQL
2) on ne précise jamais de longueur sur un type entier. Ainsi INTEGER (8)
n'a aucun sens.
3) IDENTITY est le mot clef pour un auto incrément interne (depuis norme
2003)
4) TINYINT existe en MS SQL Server mais pas dans la norme
5) la contrainte NOT NULL doit suivre le type de données dans la
définition de la colonne
6) une expression de valeur pour un type numériqaue s'écrit sans
apostrophes de délimitation
7) TEXT existe en MS SQL Server mais pas dans la norme (CLOB)
8) une contrainte de table doit être nommée
9) le séparateur d'ordre SQL dans un batch est l'instruction GO qui
s'adresse à l'outil (parser)
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
A +
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Arnold a écrit:Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un script
MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT
'0' NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 :
Incorrect Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
Bonsoir et merci pour votre réponse !
Voila jai testé en copiant exactement ça :
---------------------------------------------------------
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
------------------------------------------------------
Résultat de SQL Server :
Impossible de terminer la préparation différée :
Line 18 : incorrect syntax near 'GO'
Line 14 : incorrect syntax near 'GO'
Incorrect Syntax near the keyword 'ALTER'
Une idée ?
Merci !
"Fred BROUARD" <brouardf@club-internet.fr> a écrit dans le message de news:
OTDd65vpFHA.2580@TK2MSFTNGP09.phx.gbl...
Notes :
SQL est un langage reposant sur une norme. MS SQL Server est très proche
de la norme. MySQL en est loin !
1) MEDIUMINT n'existe pas en SQL
2) on ne précise jamais de longueur sur un type entier. Ainsi INTEGER (8)
n'a aucun sens.
3) IDENTITY est le mot clef pour un auto incrément interne (depuis norme
2003)
4) TINYINT existe en MS SQL Server mais pas dans la norme
5) la contrainte NOT NULL doit suivre le type de données dans la
définition de la colonne
6) une expression de valeur pour un type numériqaue s'écrit sans
apostrophes de délimitation
7) TEXT existe en MS SQL Server mais pas dans la norme (CLOB)
8) une contrainte de table doit être nommée
9) le séparateur d'ordre SQL dans un batch est l'instruction GO qui
s'adresse à l'outil (parser)
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
A +
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Arnold a écrit:
Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un script
MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT
'0' NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 :
Incorrect Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
Bonsoir et merci pour votre réponse !
Voila jai testé en copiant exactement ça :
---------------------------------------------------------
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
------------------------------------------------------
Résultat de SQL Server :
Impossible de terminer la préparation différée :
Line 18 : incorrect syntax near 'GO'
Line 14 : incorrect syntax near 'GO'
Incorrect Syntax near the keyword 'ALTER'
Une idée ?
Merci !
"Fred BROUARD" a écrit dans le message de news:Notes :
SQL est un langage reposant sur une norme. MS SQL Server est très proche
de la norme. MySQL en est loin !
1) MEDIUMINT n'existe pas en SQL
2) on ne précise jamais de longueur sur un type entier. Ainsi INTEGER (8)
n'a aucun sens.
3) IDENTITY est le mot clef pour un auto incrément interne (depuis norme
2003)
4) TINYINT existe en MS SQL Server mais pas dans la norme
5) la contrainte NOT NULL doit suivre le type de données dans la
définition de la colonne
6) une expression de valeur pour un type numériqaue s'écrit sans
apostrophes de délimitation
7) TEXT existe en MS SQL Server mais pas dans la norme (CLOB)
8) une contrainte de table doit être nommée
9) le séparateur d'ordre SQL dans un batch est l'instruction GO qui
s'adresse à l'outil (parser)
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
A +
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Arnold a écrit:Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un script
MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT
'0' NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 :
Incorrect Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
Quel outil utilisez vous pour envoyer un tel script SQL ?
1) Query Analyzer (Analyseur de requêtes)
2) osql / isql
3) autre, précisez
A +
Arnold a écrit:Bonsoir et merci pour votre réponse !
Voila jai testé en copiant exactement ça :
---------------------------------------------------------
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
------------------------------------------------------
Résultat de SQL Server :
Impossible de terminer la préparation différée :
Line 18 : incorrect syntax near 'GO'
Line 14 : incorrect syntax near 'GO'
Incorrect Syntax near the keyword 'ALTER'
Une idée ?
Merci !
"Fred BROUARD" a écrit dans le message de
news:Notes :
SQL est un langage reposant sur une norme. MS SQL Server est très proche
de la norme. MySQL en est loin !
1) MEDIUMINT n'existe pas en SQL
2) on ne précise jamais de longueur sur un type entier. Ainsi INTEGER (8)
n'a aucun sens.
3) IDENTITY est le mot clef pour un auto incrément interne (depuis norme
2003)
4) TINYINT existe en MS SQL Server mais pas dans la norme
5) la contrainte NOT NULL doit suivre le type de données dans la
définition de la colonne
6) une expression de valeur pour un type numériqaue s'écrit sans
apostrophes de délimitation
7) TEXT existe en MS SQL Server mais pas dans la norme (CLOB)
8) une contrainte de table doit être nommée
9) le séparateur d'ordre SQL dans un batch est l'instruction GO qui
s'adresse à l'outil (parser)
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
A +
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Arnold a écrit:Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un
script MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT
'0' NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 :
Incorrect Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Quel outil utilisez vous pour envoyer un tel script SQL ?
1) Query Analyzer (Analyseur de requêtes)
2) osql / isql
3) autre, précisez
A +
Arnold a écrit:
Bonsoir et merci pour votre réponse !
Voila jai testé en copiant exactement ça :
---------------------------------------------------------
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
------------------------------------------------------
Résultat de SQL Server :
Impossible de terminer la préparation différée :
Line 18 : incorrect syntax near 'GO'
Line 14 : incorrect syntax near 'GO'
Incorrect Syntax near the keyword 'ALTER'
Une idée ?
Merci !
"Fred BROUARD" <brouardf@club-internet.fr> a écrit dans le message de
news: OTDd65vpFHA.2580@TK2MSFTNGP09.phx.gbl...
Notes :
SQL est un langage reposant sur une norme. MS SQL Server est très proche
de la norme. MySQL en est loin !
1) MEDIUMINT n'existe pas en SQL
2) on ne précise jamais de longueur sur un type entier. Ainsi INTEGER (8)
n'a aucun sens.
3) IDENTITY est le mot clef pour un auto incrément interne (depuis norme
2003)
4) TINYINT existe en MS SQL Server mais pas dans la norme
5) la contrainte NOT NULL doit suivre le type de données dans la
définition de la colonne
6) une expression de valeur pour un type numériqaue s'écrit sans
apostrophes de délimitation
7) TEXT existe en MS SQL Server mais pas dans la norme (CLOB)
8) une contrainte de table doit être nommée
9) le séparateur d'ordre SQL dans un batch est l'instruction GO qui
s'adresse à l'outil (parser)
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
A +
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Arnold a écrit:
Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un
script MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT
'0' NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 :
Incorrect Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Quel outil utilisez vous pour envoyer un tel script SQL ?
1) Query Analyzer (Analyseur de requêtes)
2) osql / isql
3) autre, précisez
A +
Arnold a écrit:Bonsoir et merci pour votre réponse !
Voila jai testé en copiant exactement ça :
---------------------------------------------------------
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
------------------------------------------------------
Résultat de SQL Server :
Impossible de terminer la préparation différée :
Line 18 : incorrect syntax near 'GO'
Line 14 : incorrect syntax near 'GO'
Incorrect Syntax near the keyword 'ALTER'
Une idée ?
Merci !
"Fred BROUARD" a écrit dans le message de
news:Notes :
SQL est un langage reposant sur une norme. MS SQL Server est très proche
de la norme. MySQL en est loin !
1) MEDIUMINT n'existe pas en SQL
2) on ne précise jamais de longueur sur un type entier. Ainsi INTEGER (8)
n'a aucun sens.
3) IDENTITY est le mot clef pour un auto incrément interne (depuis norme
2003)
4) TINYINT existe en MS SQL Server mais pas dans la norme
5) la contrainte NOT NULL doit suivre le type de données dans la
définition de la colonne
6) une expression de valeur pour un type numériqaue s'écrit sans
apostrophes de délimitation
7) TEXT existe en MS SQL Server mais pas dans la norme (CLOB)
8) une contrainte de table doit être nommée
9) le séparateur d'ordre SQL dans un batch est l'instruction GO qui
s'adresse à l'outil (parser)
CREATE TABLE zonearea_post_reports
(report_id INTEGER NOT NULL IDENTITY,
post_id INTEGER NOT NULL,
reporter_id INTEGER NOT NULL,
report_status TINYINT NOT NULL DEFAULT 0,
report_time INTEGER NOT NULL DEFAULT 0,
report_comments TEXT,
CONSTRAINT PK_zonearea_post_reports PRIMARY KEY ( report_id )
)
GO
ALTER TABLE zonearea_users
ADD user_report_optout TINYINT NOT NULL DEFAULT '0'
GO
INSERT INTO zonearea_config ( config_name, config_value )
VALUES ('report_email', '1')
GO
A +
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************
Arnold a écrit:Bonjour,
Je n'y connais rien en base de données et j'ai besoin d'insérer un
script MySQL dans une bdd SQL Server.
Bon évidemment ça marche pas alors je me tourne vers vous.
Voici le script en question :
-----------------------------------------------------------------------------
CREATE TABLE zonearea_post_reports (
report_id MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT ,
post_id MEDIUMINT( 8 ) NOT NULL ,
reporter_id MEDIUMINT( 8 ) NOT NULL ,
report_status TINYINT( 1 ) DEFAULT '0' NOT NULL ,
report_time INT( 11 ) DEFAULT '0' NOT NULL,
report_comments TEXT,
PRIMARY KEY ( report_id )
);
ALTER TABLE zonearea_users ADD user_report_optout TINYINT( 1 ) DEFAULT
'0' NOT NULL ;
INSERT INTO zonearea_config ( config_name, config_value ) VALUES
('report_email', '1');
----------------------------------------------------------------------------
Si je l'execute tel quel dans SQL Server ça me donne : "Line 2 :
Incorrect Syntax near 'AUTO_INCREMENT'"
Merci pour votre aide ;)
--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************