积极答复者
如何用代码实现在应用程序当前目录新建sql server数据库?

问题
-
我建库的代码是这样:
string str = "CREATE DATABASE MyDatabase ON PRIMARY " + "(NAME = MyDatabase_Data, " + "FILENAME = Application.ExecutablePath+"+"\\MyDatabaseData.mdf,"+ "SIZE = 3MB, MAXSIZE = 10MB, FILEGROWTH = 10%) " + "LOG ON (NAME = MyDatabase_Log, " + "FILENAME = Application.ExecutablePath+" + "\\MyDatabaseLog.ldf," + "SIZE = 1MB, " + "MAXSIZE = 5MB, " + "FILEGROWTH = 10%)";
但是语句出错了,不知怎么回事,请教下大家。
答案
-
請問你使用的是哪種專案類型,要使用Application.ExecutablePath必須要用Windows Form專案。
以上說明若有錯誤請指教,謝謝。
http://www.dotblogs.com.tw/terrychuang/- 已标记为答案 moon_prince 2012年4月12日 15:15
全部回复
-
"FILENAME = Application.ExecutablePath+"+\\MyDatabaseData.mdf,+
这一句似乎字符串拼接错误
另外,有错误讯息吗?
- The blog of typewriter職人
- Convert C# to VB.NET
- /*If my concept is wrong ,please correct me.Thanks.*/
-
"FILENAME = Application.ExecutablePath+"+\\MyDatabaseData.mdf,+
这一句似乎字符串拼接错误
另外,有错误讯息吗?
- The blog of typewriter職人
- Convert C# to VB.NET
- /*If my concept is wrong ,please correct me.Thanks.*/
错误信息如下:
False!System.Data.SqlClient.SqlException: '.' 附近有语法错误。 在 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolea n breakConnection) 在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception , Boolean breakConnection) 在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObj ect stateObj) 在 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cm dHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, Tds ParserStateObject stateObj) 在 System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async) 在 System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult res ult, String methodName, Boolean sendToPipe) 在 System.Data.SqlClient.SqlCommand.ExecuteNonQuery() 在 CreateSql.Program.Main(String[] args) 位置 C:\Documents and Settings\Tansi on\桌面\create database\ConsoleApplication1\ConsoleApplication1\Program.cs:行号 54
行号54是指这一句:
myCommand.ExecuteNonQuery();
-
或許你可以改成這樣試試看。
string str = "CREATE DATABASE MyDatabase ON PRIMARY " + "(NAME = MyDatabase_Data, " + "FILENAME = '" + Application.ExecutablePath + "\\MyDatabaseData.mdf'," + "SIZE = 3MB, MAXSIZE = 10MB, FILEGROWTH = 10%) " + "LOG ON (NAME = MyDatabase_Log, " + "FILENAME = '" + Application.ExecutablePath+"\\MyDatabaseLog.ldf'," + "SIZE = 1MB, " + "MAXSIZE = 5MB, " + "FILEGROWTH = 10%)";
以上說明若有錯誤請指教,謝謝。
http://www.dotblogs.com.tw/terrychuang/ -
或許你可以改成這樣試試看。
string str = "CREATE DATABASE MyDatabase ON PRIMARY " + "(NAME = MyDatabase_Data, " + "FILENAME = '" + Application.ExecutablePath + "\\MyDatabaseData.mdf'," + "SIZE = 3MB, MAXSIZE = 10MB, FILEGROWTH = 10%) " + "LOG ON (NAME = MyDatabase_Log, " + "FILENAME = '" + Application.ExecutablePath+"\\MyDatabaseLog.ldf'," + "SIZE = 1MB, " + "MAXSIZE = 5MB, " + "FILEGROWTH = 10%)";
以上說明若有錯誤請指教,謝謝。
http://www.dotblogs.com.tw/terrychuang/出错了,在Application.ExecutablePath处显示:当前上下文不存在名称Application
-
請問你使用的是哪種專案類型,要使用Application.ExecutablePath必須要用Windows Form專案。
以上說明若有錯誤請指教,謝謝。
http://www.dotblogs.com.tw/terrychuang/- 已标记为答案 moon_prince 2012年4月12日 15:15