當前位置:首頁 » 編程語言 » 向sqlserver插入數據
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

向sqlserver插入數據

發布時間: 2022-02-25 22:52:21

sqlserver 怎麼往表裡插入數據

insert into sc(sno,cno,grade)
select '200101','c1',90 union all
select '200101','c2',85 union all
select '200101','c3',80 union all
select '200101','c1',85

或者用 insert into sc(sno,cno,grade) select * from tablename

㈡ java 向SQLserver 2008 中插入數據

你先寫個類封裝QQ資料庫的所有欄位,然後再新建一個類,名字取成QQ資料庫的名稱+Dao,我這里有個示例
public boolean InsertEmp(EmployeeBean emp) {
boolean blFlag = false;
Connection con = null;
PreparedStatement ps = null;
sql = "INSERT INTO Employee(DerpartId,Name,Password) VALUES(?,?,?)";
try {
con = BaseDAO.GetConnection();
ps = con.prepareStatement(sql);
ps.setInt(1, emp.getDerpartId());
ps.setString(2, emp.getName());
ps.setString(3, emp.getPassword());
int num = ps.executeUpdate();
blFlag = num > 0;
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
} finally {
BaseDAO.close(null, ps, con);
}
return blFlag;
}

㈢ 往sqlserver插入數據時如何自動判別插入比當前所有數據中最大的項再加1

一樓是個好辦法不過如果你非要這樣做,也不是不可能。

select 'T' + Cast( ISNULL(Max(Cast(SUBSTRING(studentID,1,4) AS INT)),0) +1 AS varchar)

這樣就得到最大的一個ID了。
沒測試,但基本上就是這樣實現的。

㈣ 怎樣往 sqlserver資料庫添加一個數據

添加方法如下:

1、打開SQL,在身份驗證中選擇「windows身份驗證」後,點擊下方的"連接「按鈕。連接後選擇資料庫-新建資料庫,建立名為」test「的資料庫。

㈤ 怎麼插入sqlserver資料庫數據

添加數據需要知道往哪張表添加,以及自己要添加的內容,然後可用insert語句執行。
1、以sqlserver2008r2為例,登錄SQL Server Management Studio到指定的資料庫。
2、登錄後點擊「新建查詢」。

3、比如要往test表中插入數據,可先用如下語句查看一下表結構及表內數據:

1

select * from test;

4、根據自己的實際情況添加輸入,比如要添加一條「16,小小動」的數據。

1

insert into test (id,name) values (16,'小小動');

執行成功後會有提示:

5、此時資料庫中數據如下,說明添加成功。

㈥ sqlserver 如何向資料庫插入多條數據 數據條數不確定

你只要將table裡面現有的數據添加到資料庫就行了,其實就是多條數據插入,至於你說的table可以動態添加行數和table數據插入資料庫沒關系,

我想你是不是擔心table動態添加行數後,插入數據代碼怎麼寫的問題,所以才問這個問題的

㈦ 從一個sqlserver表中向另一個sqlserver表中插入數據

可以使用如下語句:
Insert Into [A表](欄位1,欄位2...欄位N)
Select 欄位1,欄位2...欄位N From [B表]

注意,要求目標[欄位xx],與來源[欄位xx]類型匹配。

㈧ 怎樣快速向sqlserver插入上億條數據

如果是同一個伺服器上,那麼如果用bcp導出數據,再導入數據,效率可能還不如分批次的導入效率好,本來bcp的效率是挺高的,但是先導出,再導入,就得花2倍時間。

我覺得上面提到的分區表,應該是一個好辦法,但是分區表在把某個表的數據轉移到其他表的時候,那麼這個分區的數據就沒有了,而上面的意思只是插入,也就是原來的表的數據還在,只是把原表的數據插入到另一個表。

所以,我在想,一個表的數據,而且是大量的數據,為什麼要插入到另一個表中,是否一定要這么做呢?

原來的表(t)沒有做分區, 目的就是改成分區表, 步驟如下:
1. 建新表(t2);
2. 將舊表t數據插入到新表t2;
3. 將舊表刪除;
4. 重建約束和索引;

其實事情已經做完了, 2億7千萬條數據存儲過程分批插入大概3小時完成, 只是探索一下:
有無更好更方便的方式來做這個事情

㈨ java中怎樣向SQLserver中插入數據

1. 通過Microsoft的JDBC驅動連接。此JDBC驅動共有三個文件,分別是mssqlserver.jar、msutil.jar和 msbase.jar,可以到微軟的網站去下載(://www.microsoft.com/downloads /details.aspx?FamilyId=07287B11-0502-461A-B138-2AA54BFDC03A& displaylang=en),如果你下載的是setup.exe,還需要安裝它,安裝後會生成上面的三個jar文件。此JDBC驅動實現了 JDBC 2.0。
驅動程序名稱:com.microsoft.jdbc.sqlserver.SQLServerDriver(即下面的classforname)
資料庫連接URL:jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=dbname(即下面的url)

2. 通過JTDS JDBC Driver連接SQL Server資料庫,此驅動的文件名為jtds-1.2.jar,下載路徑為(http://sourceforge.net/project/showfiles.php?group_id=33291),此驅動支持Microsoft SQL Server (6.5, 7.0, 2000 和2005) 和Sybase,並且實現了JDBC3.0,是免費的。
驅動程序名稱:net.sourceforge.jtds.jdbc.Driver(即下面的classforname)
資料庫連接URL:jdbc:jtds:sqlserver://localhost:1433/dbname(即下面的url)

JDBC連接SQL Server資料庫的Bean代碼網上大把的有,下面摘錄其中的一部分:(請將localhost和1433改成你實際應用中的SQL Server伺服器地址和埠號,dbname改成你實際的資料庫名)

import java.sql.*;
public class DatabaseConn {

private Connection conn;
private Statement stmt;
private String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=dbname";
private String classforname = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
private String uid = "sa";
private String pwd = "password";

public DatabaseConn(){}

public Connection getConnection()
{
try
{
Class.forName(classforname);
if (conn == null || conn.isClosed())
conn = DriverManager.getConnection( url, uid, pwd);
Statement stat=conn.statement();
String s="insert into xx values('a','b')";
stat.execute(s);
}
catch (ClassNotFoundException ex)

catch (SQLException ex)

return conn;
}

}

別人的博客上的,僅供參考

㈩ c#怎樣向sqlserver批量插入數據

C#和MS SQL交互使用的技術叫做 ADO.NET。 使用ADO.NET可以方便的對SQL SERVER 進行操作。

(如果你對ADO.NET不了解,建議先MSDN一下)

批量插入數據,有兩種方式,

1,數據比較復雜但是量不是很大,(這個大小的概念要視你的硬體、網路而定,一般在100萬條以上才叫大)。

使用FOR循環進行插入, 即聲明連接(conn.Open)然後進行遍歷,

一條一條插入資料庫(執行Insert語句),

一般來說,100W條數據,如果插入本機資料庫的話, 耗時一般在40S-1分鍾左右,

也可以在SqlServer中創建一個存儲過程來執行Insert命令, 遍歷時只需要調用存儲過程即可, 存儲過程的執行效率比Sql語句要高很多,因為不需要每次都編譯。

100W條數據用存儲過程來執行的話,一般耗時在20S左右,。


2數據量巨大,但是類型較簡單,(一般指上百萬條數據)

使用ADO.NET提供的BulkCopy,即批量導入,

語法:

publicstaticvoidBulkToDB(DataTabledt,stringTableName)
{
SqlConnectionsqlConn=newSqlConnection(
ConfigurationManager.ConnectionStrings["dbconnstr"].ConnectionString);

SqlBulkCopybulkCopy=newSqlBulkCopy(sqlConn);
bulkCopy.BulkCopyTimeout=600;
bulkCopy.DestinationTableName=TableName;
bulkCopy.BatchSize=dt.Rows.Count;

try
{
sqlConn.Open();
if(dt!=null&&dt.Rows.Count!=0)
bulkCopy.WriteToServer(dt);
}
catch(Exceptionex)
{
throwex;
}
finally
{
sqlConn.Close();
if(bulkCopy!=null)
bulkCopy.Close();
}
}

需要傳入一個DataTable,一個表名。


這種方式速度非常快,同樣100W條數據,本機導入,大概3-5秒就可以完成,

但是需要注意,傳入的DataTable必須和Sql Server中的表結構一模一樣,

比如你的表有3列,分別是Name, Age, Sex。 你傳入的DataTable也必須是如此,所以這種方式只適合導入一些基礎數據, 並不適合作為數據層的常用方法。


如果數據量巨大又要求很高的效率,更建議使用NoSql資料庫