Je cherche à trouver un ouvrage ou du code me permettant de créer directement
une basse de donnée pour SQL SERVEUR 2000 par programmation depuis
Visual Basic .NET (Microsoft Developpement Environnement 2003 Version 7.1)
Cette possiblilté était offerte sous visual basic 6 avec des bases de
données Access par : CREATEDATABASE si la base n'existait pas.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
AlexC
Moi j'utilise cette méthode ( ce n'est peut être pas la meilleure ) :
je créé un script SQL ( un simple fichier texte avec l'extension .sql), dans lequel j'insère les commandes à effectuer.
Private Sub CreateSQLScriptFile(Byval NomBaseSQL as string) Dim SqlFile As New FileInfo("c:Script.sql") Dim SqlFileText As TextWriter If SqlFile.Exists = False Then SqlFileText = SqlFile.CreateText Else SqlFile.Delete() SqlFileText = SqlFile.CreateText End If SqlFileText.WriteLine("create database " & NomBaseSQL) SqlFileText.WriteLine("go") 'Les lignes suivantes ne sont utiles que si vous voulez spécifier un utilisateur pour la base de donnée SqlFileText.WriteLine("sp_addlogin '" & User & "','" & UserPassword & "'") SqlFileText.WriteLine("go") SqlFileText.WriteLine("sp_grantdbaccess '" & User & "','" & BaseSQL & "'") SqlFileText.WriteLine("go") SqlFileText.Flush() SqlFileText.Close() End Sub
Ensuite j'execute ce script qui va me créer la base SQL :
Private Sub ExecuteSQLScriptFile(ByVal Mdpsa as string, ByVal InstanceSQL as string ) Dim OsqlProcess As System.Diagnostics.Process = New System.Diagnostics.Process OsqlProcess .StartInfo.UseShellExecute = False OsqlProcess .StartInfo.RedirectStandardOutput = True OsqlProcess .StartInfo.FileName = "osql.exe" OsqlProcess .StartInfo.Arguments = "-U sa -P " & Mdpsa & " -S " & System.Net.Dns.GetHostName.ToUpper & "" & InstanceSQL.ToUpper & " -n -i c:Script.sql" OsqlProcess .StartInfo.CreateNoWindow = True OsqlProcess .Start() OsqlProcess .WaitForExit() OsqlProcess .Close() OsqlProcess .Dispose() End Sub
Si il existe une autre méthode je suis preneur :o)
Moi j'utilise cette méthode ( ce n'est peut être pas la meilleure ) :
je créé un script SQL ( un simple fichier texte avec l'extension .sql), dans
lequel j'insère les commandes à effectuer.
Private Sub CreateSQLScriptFile(Byval NomBaseSQL as string)
Dim SqlFile As New FileInfo("c:Script.sql")
Dim SqlFileText As TextWriter
If SqlFile.Exists = False Then
SqlFileText = SqlFile.CreateText
Else
SqlFile.Delete()
SqlFileText = SqlFile.CreateText
End If
SqlFileText.WriteLine("create database " & NomBaseSQL)
SqlFileText.WriteLine("go")
'Les lignes suivantes ne sont utiles que si vous voulez spécifier un
utilisateur pour la base de donnée
SqlFileText.WriteLine("sp_addlogin '" & User & "','" & UserPassword &
"'")
SqlFileText.WriteLine("go")
SqlFileText.WriteLine("sp_grantdbaccess '" & User & "','" & BaseSQL &
"'")
SqlFileText.WriteLine("go")
SqlFileText.Flush()
SqlFileText.Close()
End Sub
Ensuite j'execute ce script qui va me créer la base SQL :
Private Sub ExecuteSQLScriptFile(ByVal Mdpsa as string, ByVal InstanceSQL as
string )
Dim OsqlProcess As System.Diagnostics.Process = New
System.Diagnostics.Process
OsqlProcess .StartInfo.UseShellExecute = False
OsqlProcess .StartInfo.RedirectStandardOutput = True
OsqlProcess .StartInfo.FileName = "osql.exe"
OsqlProcess .StartInfo.Arguments = "-U sa -P " & Mdpsa & " -S " &
System.Net.Dns.GetHostName.ToUpper & "" & InstanceSQL.ToUpper & " -n -i
c:Script.sql"
OsqlProcess .StartInfo.CreateNoWindow = True
OsqlProcess .Start()
OsqlProcess .WaitForExit()
OsqlProcess .Close()
OsqlProcess .Dispose()
End Sub
Si il existe une autre méthode je suis preneur :o)
Moi j'utilise cette méthode ( ce n'est peut être pas la meilleure ) :
je créé un script SQL ( un simple fichier texte avec l'extension .sql), dans lequel j'insère les commandes à effectuer.
Private Sub CreateSQLScriptFile(Byval NomBaseSQL as string) Dim SqlFile As New FileInfo("c:Script.sql") Dim SqlFileText As TextWriter If SqlFile.Exists = False Then SqlFileText = SqlFile.CreateText Else SqlFile.Delete() SqlFileText = SqlFile.CreateText End If SqlFileText.WriteLine("create database " & NomBaseSQL) SqlFileText.WriteLine("go") 'Les lignes suivantes ne sont utiles que si vous voulez spécifier un utilisateur pour la base de donnée SqlFileText.WriteLine("sp_addlogin '" & User & "','" & UserPassword & "'") SqlFileText.WriteLine("go") SqlFileText.WriteLine("sp_grantdbaccess '" & User & "','" & BaseSQL & "'") SqlFileText.WriteLine("go") SqlFileText.Flush() SqlFileText.Close() End Sub
Ensuite j'execute ce script qui va me créer la base SQL :
Private Sub ExecuteSQLScriptFile(ByVal Mdpsa as string, ByVal InstanceSQL as string ) Dim OsqlProcess As System.Diagnostics.Process = New System.Diagnostics.Process OsqlProcess .StartInfo.UseShellExecute = False OsqlProcess .StartInfo.RedirectStandardOutput = True OsqlProcess .StartInfo.FileName = "osql.exe" OsqlProcess .StartInfo.Arguments = "-U sa -P " & Mdpsa & " -S " & System.Net.Dns.GetHostName.ToUpper & "" & InstanceSQL.ToUpper & " -n -i c:Script.sql" OsqlProcess .StartInfo.CreateNoWindow = True OsqlProcess .Start() OsqlProcess .WaitForExit() OsqlProcess .Close() OsqlProcess .Dispose() End Sub
Si il existe une autre méthode je suis preneur :o)
Richard14
Richard14
J'ai plus de 100 tables à créer, et je fais des mises à jour chez plus de 300 clients tous les mois. Je cherche quelque chose de plus pertinent.
Merci à toi
"AlexC" a écrit :
Moi j'utilise cette méthode ( ce n'est peut être pas la meilleure ) :
je créé un script SQL ( un simple fichier texte avec l'extension .sql), dans lequel j'insère les commandes à effectuer.
Private Sub CreateSQLScriptFile(Byval NomBaseSQL as string) Dim SqlFile As New FileInfo("c:Script.sql") Dim SqlFileText As TextWriter If SqlFile.Exists = False Then SqlFileText = SqlFile.CreateText Else SqlFile.Delete() SqlFileText = SqlFile.CreateText End If SqlFileText.WriteLine("create database " & NomBaseSQL) SqlFileText.WriteLine("go") 'Les lignes suivantes ne sont utiles que si vous voulez spécifier un utilisateur pour la base de donnée SqlFileText.WriteLine("sp_addlogin '" & User & "','" & UserPassword & "'") SqlFileText.WriteLine("go") SqlFileText.WriteLine("sp_grantdbaccess '" & User & "','" & BaseSQL & "'") SqlFileText.WriteLine("go") SqlFileText.Flush() SqlFileText.Close() End Sub
Ensuite j'execute ce script qui va me créer la base SQL :
Private Sub ExecuteSQLScriptFile(ByVal Mdpsa as string, ByVal InstanceSQL as string ) Dim OsqlProcess As System.Diagnostics.Process = New System.Diagnostics.Process OsqlProcess .StartInfo.UseShellExecute = False OsqlProcess .StartInfo.RedirectStandardOutput = True OsqlProcess .StartInfo.FileName = "osql.exe" OsqlProcess .StartInfo.Arguments = "-U sa -P " & Mdpsa & " -S " & System.Net.Dns.GetHostName.ToUpper & "" & InstanceSQL.ToUpper & " -n -i c:Script.sql" OsqlProcess .StartInfo.CreateNoWindow = True OsqlProcess .Start() OsqlProcess .WaitForExit() OsqlProcess .Close() OsqlProcess .Dispose() End Sub
Si il existe une autre méthode je suis preneur :o)
Richard14
J'ai plus de 100 tables à créer, et je fais des mises à jour chez plus de
300 clients
tous les mois. Je cherche quelque chose de plus pertinent.
Merci à toi
"AlexC" a écrit :
Moi j'utilise cette méthode ( ce n'est peut être pas la meilleure ) :
je créé un script SQL ( un simple fichier texte avec l'extension .sql), dans
lequel j'insère les commandes à effectuer.
Private Sub CreateSQLScriptFile(Byval NomBaseSQL as string)
Dim SqlFile As New FileInfo("c:Script.sql")
Dim SqlFileText As TextWriter
If SqlFile.Exists = False Then
SqlFileText = SqlFile.CreateText
Else
SqlFile.Delete()
SqlFileText = SqlFile.CreateText
End If
SqlFileText.WriteLine("create database " & NomBaseSQL)
SqlFileText.WriteLine("go")
'Les lignes suivantes ne sont utiles que si vous voulez spécifier un
utilisateur pour la base de donnée
SqlFileText.WriteLine("sp_addlogin '" & User & "','" & UserPassword &
"'")
SqlFileText.WriteLine("go")
SqlFileText.WriteLine("sp_grantdbaccess '" & User & "','" & BaseSQL &
"'")
SqlFileText.WriteLine("go")
SqlFileText.Flush()
SqlFileText.Close()
End Sub
Ensuite j'execute ce script qui va me créer la base SQL :
Private Sub ExecuteSQLScriptFile(ByVal Mdpsa as string, ByVal InstanceSQL as
string )
Dim OsqlProcess As System.Diagnostics.Process = New
System.Diagnostics.Process
OsqlProcess .StartInfo.UseShellExecute = False
OsqlProcess .StartInfo.RedirectStandardOutput = True
OsqlProcess .StartInfo.FileName = "osql.exe"
OsqlProcess .StartInfo.Arguments = "-U sa -P " & Mdpsa & " -S " &
System.Net.Dns.GetHostName.ToUpper & "" & InstanceSQL.ToUpper & " -n -i
c:Script.sql"
OsqlProcess .StartInfo.CreateNoWindow = True
OsqlProcess .Start()
OsqlProcess .WaitForExit()
OsqlProcess .Close()
OsqlProcess .Dispose()
End Sub
Si il existe une autre méthode je suis preneur :o)
J'ai plus de 100 tables à créer, et je fais des mises à jour chez plus de 300 clients tous les mois. Je cherche quelque chose de plus pertinent.
Merci à toi
"AlexC" a écrit :
Moi j'utilise cette méthode ( ce n'est peut être pas la meilleure ) :
je créé un script SQL ( un simple fichier texte avec l'extension .sql), dans lequel j'insère les commandes à effectuer.
Private Sub CreateSQLScriptFile(Byval NomBaseSQL as string) Dim SqlFile As New FileInfo("c:Script.sql") Dim SqlFileText As TextWriter If SqlFile.Exists = False Then SqlFileText = SqlFile.CreateText Else SqlFile.Delete() SqlFileText = SqlFile.CreateText End If SqlFileText.WriteLine("create database " & NomBaseSQL) SqlFileText.WriteLine("go") 'Les lignes suivantes ne sont utiles que si vous voulez spécifier un utilisateur pour la base de donnée SqlFileText.WriteLine("sp_addlogin '" & User & "','" & UserPassword & "'") SqlFileText.WriteLine("go") SqlFileText.WriteLine("sp_grantdbaccess '" & User & "','" & BaseSQL & "'") SqlFileText.WriteLine("go") SqlFileText.Flush() SqlFileText.Close() End Sub
Ensuite j'execute ce script qui va me créer la base SQL :
Private Sub ExecuteSQLScriptFile(ByVal Mdpsa as string, ByVal InstanceSQL as string ) Dim OsqlProcess As System.Diagnostics.Process = New System.Diagnostics.Process OsqlProcess .StartInfo.UseShellExecute = False OsqlProcess .StartInfo.RedirectStandardOutput = True OsqlProcess .StartInfo.FileName = "osql.exe" OsqlProcess .StartInfo.Arguments = "-U sa -P " & Mdpsa & " -S " & System.Net.Dns.GetHostName.ToUpper & "" & InstanceSQL.ToUpper & " -n -i c:Script.sql" OsqlProcess .StartInfo.CreateNoWindow = True OsqlProcess .Start() OsqlProcess .WaitForExit() OsqlProcess .Close() OsqlProcess .Dispose() End Sub
Si il existe une autre méthode je suis preneur :o)
Patrice
Idem dans SQL Server. Il est possible d'utiliser les commandes SQL CREATE DATABASE puis CREATE TABLE etc...
Sinon SQLDMO ou fichier modèle mais avec un peu plus de pré-requis (installation, accès).
-- Patrice
"Richard14" a écrit dans le message de news:
Bonjour,
Je cherche à trouver un ouvrage ou du code me permettant de créer
directement
une basse de donnée pour SQL SERVEUR 2000 par programmation depuis Visual Basic .NET (Microsoft Developpement Environnement 2003 Version 7.1) Cette possiblilté était offerte sous visual basic 6 avec des bases de données Access par : CREATEDATABASE si la base n'existait pas.
merci de me tenir informé
Idem dans SQL Server. Il est possible d'utiliser les commandes SQL CREATE
DATABASE puis CREATE TABLE etc...
Sinon SQLDMO ou fichier modèle mais avec un peu plus de pré-requis
(installation, accès).
--
Patrice
"Richard14" <Richard14@discussions.microsoft.com> a écrit dans le message de
news:100FCD4E-6F36-49A8-B347-EE8E3DD8BDD0@microsoft.com...
Bonjour,
Je cherche à trouver un ouvrage ou du code me permettant de créer
directement
une basse de donnée pour SQL SERVEUR 2000 par programmation depuis
Visual Basic .NET (Microsoft Developpement Environnement 2003 Version 7.1)
Cette possiblilté était offerte sous visual basic 6 avec des bases de
données Access par : CREATEDATABASE si la base n'existait pas.
Idem dans SQL Server. Il est possible d'utiliser les commandes SQL CREATE DATABASE puis CREATE TABLE etc...
Sinon SQLDMO ou fichier modèle mais avec un peu plus de pré-requis (installation, accès).
-- Patrice
"Richard14" a écrit dans le message de news:
Bonjour,
Je cherche à trouver un ouvrage ou du code me permettant de créer
directement
une basse de donnée pour SQL SERVEUR 2000 par programmation depuis Visual Basic .NET (Microsoft Developpement Environnement 2003 Version 7.1) Cette possiblilté était offerte sous visual basic 6 avec des bases de données Access par : CREATEDATABASE si la base n'existait pas.