1、利用navicat新建資料庫,也可採取其他方式。
2. 代碼中並發執行同一個sql會影響sql的速度嗎
對單次sql執行來講,影響不會太大,除非並發數超過了資料庫瓶頸,導致sql執行需要等待;
對整個並發執行來講,肯定會比執行單個sql要慢的,因為雖然多次執行的sql是一樣的,但是對資料庫來講還是需要進行多次處理的,只是在資料庫中sql只需要解析
一次就好
3. 如何在c#代碼中執行帶GO語句的SQL文件
需要在C#代碼中執行一個SQL文件的內容。遇到了兩個問題:
1. 因為SQL文件中有「GO」語句,執行時報錯「Incorrect syntax near 'GO'.」。
2. 如果將SQL文件中有「GO」語句全部去掉,則可能出現SQL運行錯誤。原因是去掉「GO」後,等於整個文件的內容一次執行,但是SQL文件有可能後面的內容需要在前面某些語句已經執行的基礎上才能執行的。
解決的辦法是:用一個StringBuilder,然後一行一行的讀SQL文件,如果該行的內容不是「GO」,就向StringBuilder後Append。如果是「GO」,就執行StringBuilder的內的SQL語句,然後清空StringBuilder。這樣就能達到與直接執行帶「GO」語句的SQL文件一樣的效果。
代碼如下:
private static void ExecuteSQLFile(String sqlFileName)
{
SqlConnection connecction = null;
try
{
4. 代碼中並發執行同一個sql會影響sql的速度嗎
對單次sql執行來講,影響不會太大,除非並發數超過了資料庫瓶頸,導致sql執行需要等待;
對整個並發執行來講,肯定會比執行單個sql要慢的,因為雖然多次執行的sql是一樣的,但是對資料庫來講還是需要進行多次處理的,只是在資料庫中sql只需要解析一次就好
5. 在C#中執行Sql語句建表
我給你一個實例吧:
private SqlParameter paraName;
private SqlConnection conn;
private string connstr;
private void Form1_Load(object sender, System.EventArgs e)
{
//連接語句
connstr = "server=127.0.0.1;database=Northwind;uid=sa;pwd=123";
創建連接對象
conn = new SqlConnection(connstr);
}
private void button1_Click(object sender, System.EventArgs e)
{
//定義表名
string tableName=this.textBox1.Text;
//添加表語句
string add_table="create table " + tableName + " (num NVarChar(16) not null primary key)";
//創建命名對象
SqlCommand comm=new SqlCommand(add_table,conn);
comm.CommandType= CommandType.Text;
//連接打開
comm.Connection.Open();
//執行建表操作
comm.ExecuteNonQuery();
conn.Close();
comm.Dispose();
}
6. 如何在VB中執行SQL腳本文件
在MSSQL SERVER的查詢分析器中可通過輸入如下命令,來執行一個外部的*.sql文件:
EXEC master.dbo.xp_cmdshell 'osql -U username -P password -i "filename"'
注意格式:xp_cmdshell後面的全部字元串要用單引號括起來,由於外部文件名中可能含有空格,所以要把filename字元串再用雙引號括起來。比如你的SQL SERVER的用戶名為sa,密碼為sa,有一個外部文件為C:\Data Base.sql.那麼這條語句就應該寫成:
EXEC master.dbo.xp_cmdshell 'osql -U sa -P sa -i "C:\Data Base.sql"'.
說了半天,這還是在SQL SERVER中的操作,那麼在VB中用代碼如何實現呢?
我用VB寫了一個小工程,全部代碼如下:
Private Const ServerName = "Rock"
Private Const UserID = "sa"
Private Const PWD = "Rock"
Private Const ExternFile = "E:\Wang JX\DATABASE.SQL"
Private Sub Form_Load()
Dim conn As New Connection
Dim rs As New Recordset
Dim sql As String
sql = "master.dbo.xp_cmdshell 'osql -U " & UserID & " -P " & PWD & " -i """ & ExternFile & """'"
conn.Open "provider=sqloledb;data source=" & ServerName & ";user id=" & UserID & ";pwd=" & PWD
conn.Execute sql '這一句執行的可能會慢一些
End Sub
7. 如何在c#代碼中執行帶GO語句的SQL文件
代碼如下:privatestaticvoid ExecuteSQLFile(String sqlFileName) { SqlConnection connecction = null; try { connecction = newSqlConnection(@"uid=XXXX; pwd=XXXX; server=XXXX; database=XXXX; connection timeout=30"); SqlCommand command = connecction.CreateCommand(); connecction.Open(); FileStream stream = newFileStream(sqlFileName, FileMode.Open); StreamReader reader = newStreamReader(stream); StringBuilder builder = newStringBuilder(); String strLine = ""; while ((strLine = reader.ReadLine()) != null) { if (strLine.Trim().ToUpper() != @"GO") { builder.AppendLine(strLine); } else { command.CommandText = builder.ToString(); command.ExecuteNonQuery(); builder.Remove(0, builder.Length); } } } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { if (connecction != null && connecction.State != ConnectionState.Closed) { connecction.Close(); } } }
8. mysql如何執行sql腳本文件
右鍵以文本文件的形式打開,裡面是記錄著可以在mysql裡面執行的代碼。
要執行sql文件裡面的代碼,需要打開mysql資料庫去執行,新手推薦用軟體的形式執行此sql,軟體如navicat,sqlyog等。
打開軟體並且配置連接資料庫的信息後打開,然後創建一個資料庫,之後右鍵資料庫選中執行sql,接著選擇要執行的sql文件,按提示一步一步走下去即可。
老手推薦使用cmd指令來執行sql,因為速度比較快,首先也是連接上資料庫,創建並選擇好資料庫:
mysql>use
資料庫名;
mysql>set
names
utf8;
--設置傳輸編碼,避免中文亂碼
mysql>source
d:/xxx.sql;
--
source
文件路徑
就這么簡單,
然後就等著sql執行完畢即可.
9. 如何在代碼中實現SQL觸發器的功能
先給你舉個觸發器的實例:
先創建兩個表
Create Table Student( --學生表
StudentID int primary key, --學號
....
)
Create Table BorrowRecord( --學生借書記錄表
BorrowRecord int identity(1,1), --流水號
StudentID int , --學號
BorrowDate datetime, --借出時間
ReturnDAte Datetime, --歸還時間
...
)
創建觸發器
Create Trigger truStudent
On Student --在Student表中創建觸發器
for Update --為什麼事件觸發,在這里就是修改的時候會執行這個觸發器,一旦你修改Student表,就會執行
As --事件觸發後所要做的事情
if Update(StudentID)
begin
Update BorrowRecord
Set StudentID=i.StudentID
From BorrowRecord br , Deleted d ,Inserted i --Deleted和Inserted臨時表
Where br.StudentID=d.StudentID
end