⑴ 怎麼寫sql語句將Excel的數據插入到SQL Server資料庫
方法和詳細的操作步驟如下:
1、第一步,准備Excel表,並希望將其導入SQL
Server 2012中的QearlTest資料庫,見下圖,轉到下面的步驟。
⑵ 怎樣將EXCEL數據表導入到SQL中
在Excel中錄入好數據以後,可能會有導入資料庫的需求,這個時候就需要利用一些技巧導入。
如何將excel表導入資料庫的方法:
1、對於把大量數據存放到資料庫中,最好是用圖形化資料庫管理工具,可是如果沒有了工具,只能執行命令的話這會是很費時間的事。那隻能對數據進行組合,把數據組成insert語句然後在命令行中批量直行即可。
2、對下面數據進行組合,這用到excel中的一個功能。
在excel中有個fx的輸入框,在這里把組好的字元串填上去就好了。
註:字元串1&A2&字元串2&...
A2可以直接輸入,也可以用滑鼠點對應的單元格。
⑶ 怎樣把excel里的數據作為條件 導入到sql語句中
1.打開SQL Server Management Studio,按圖中的路徑進入導入數據界面。
⑷ 如何用sql語句從excel導入sql中
我做過這個功能,分3步。
第一步,校驗Excel的數據是否符合條件,比如不能為空,數據類型不能沖突等等。
第二步,在資料庫里創建臨時表,表結構跟excel一模一樣。把數據從excel照搬到臨時表中。
第三步,根據過濾條件,把符合的數據從臨時表中insert到對象表中。
//新文件名稱
string newfile = name + lastName; //假定excel文件名 最終數據.excel
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("../../File/") + newfile + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
insertTempTable(strConn); //存入臨時表 包含第一步和第二步
insertAllTable(); //第三步
/// <summary>
/// 把數據從xls導入臨時創建表
/// </summary>
/// <param name="conn"></param>
public void insertTempTable(string conn)
{
string strConn = conn;
//這里假設excel欄位名稱為 欄位(序號,零件編號,零件名稱,數量,價格)
//excel表名稱為Matrixkey
string query = "SELECT [序號],[零件編號],[零件名稱],[數量],[價格] FROM [Matrixkey$] Where [零件編號] <> '' ";
OleDbCommand oleCommand = new OleDbCommand(query, new OleDbConnection(strConn));
OleDbDataAdapter oleAdapter = new OleDbDataAdapter(oleCommand);
DataSet PartsDataSet = new DataSet();
oleAdapter.Fill(PartsDataSet, "[Matrixkey$]");
DBAccess dba = DBAccessFactory.CreateAccess(); //這是我的資料庫操作類
//存儲過程 createtmptable 用來創建臨時表 結構跟excel一模一樣
dba.ExecuteProcere("createtmptable");
foreach (DataRow row in PartsDataSet.Tables[0].Rows)
{
if (row["價格"].ToString() == "")
{row["價格"] = "0.00";}
dba.ExecuteInsertSQL(row, "tmpparts"); //執行第2步 創建的臨時表叫tmpparts
}
}
/// <summary>
/// 執行最終的插入存儲過程
/// </summary>
public void insertAllTable()
{
DBAccess dba = DBAccessFactory.CreateAccess();
//存儲過程BuildRelation用來實現第3步 這個就簡單了 我寫個例子你看看
dba.ExecuteProcere("BuildRelation");
}
存儲過程:BuildRelation
insert into 對象表 --假設對象表欄位為 ID No Code Name Quantity Price 其中ID自增
select * from tmpparts
where 零件編號 not in (select Code from tmpparts)
學會了哇?
⑸ 怎麼將excel快速導入sql
如果要導入資料庫直接在需要導入的表裡面選擇導入,可以藉助一些工具,例如navicat等都支持直接導入。
⑹ 怎麼把excel文件里的數據導入sql資料庫
第一步:建立資料庫和數據表(按照自己的Excel數據設立欄位)。
[sql] view plain print?
CREATE DATABASE php_excel;
USE php_excel;
CREATE TABLE IF NOT EXISTS php_excel(
id int(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
gid varchar(20) NOT NULL,
stu_no varchar(20) NOT NULL,
name varchar(45) NOT NULL,
age int(4) NOT NULL
)ENGINE=MyISAM DEFAULT CHARSET=utf8;
第二步:前台index.php文件。
[html] view plain print?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>phpexcel導入excel數據到MYSQL資料庫</title>
</head>
<body>
<form name="frm1" action="insertdb.php" method="post" enctype="multipart/form-data">
<input name="filename" type="file" />
<input name="submit" type="submit" value="import" />
</form>
</body>
</html>
第三步:向資料庫插入數據的insertdb.php文件。
[php] view plain print?
session_start();
header("Content-type:text/html;charset:utf-8");
//全局變數
$succ_result=0;
$error_result=0;
$file=$_FILES['filename'];
$max_size="2000000"; //最大文件限制(單位:byte)
$fname=$file['name'];
$ftype=strtolower(substr(strrchr($fname,'.'),1));
//文件格式
$uploadfile=$file['tmp_name'];
if($_SERVER['REQUEST_METHOD']=='POST'){
if(is_uploaded_file($uploadfile)){
if($file['size']>$max_size){
echo "Import file is too large";
exit;
}
if($ftype!='xls'){
echo "Import file type is error";
exit;
}
}else{
echo "The file is not empty!";
exit;
}
}
require("./conn.php"); //連接mysql資料庫
//調用phpexcel類庫
require_once 'PHPExcel.php';
require_once 'PHPExcel\IOFactory.php';
require_once 'PHPExcel\Reader\Excel5.php';
$objReader = PHPExcel_IOFactory::createReader('Excel5');//use excel2007 for 2007 format
$objPHPExcel = $objReader->load($uploadfile);
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow(); // 取得總行數
$highestColumn = $sheet->getHighestColumn(); // 取得總列數
$arr_result=array();
$strs=array();
for($j=2;$j<=$highestRow;$j++)
{
unset($arr_result);
unset($strs);
for($k='A';$k<= $highestColumn;$k++)
{
//讀取單元格
$arr_result .= $objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue().',';
}
$strs=explode(",",$arr_result);
$sql="insert into php_excel(gid,stu_no,name,age) values ($strs[0],'$strs[1]','$strs[2]',$strs[3])";
echo $sql."<br/>";
mysql_query("set names utf8");
$result=mysql_query($sql) or die("執行錯誤");
$insert_num=mysql_affected_rows();
if($insert_num>0){
$succ_result+=1;
}else{
$error_result+=1;
}
}
echo "插入成功".$succ_result."條數據!!!<br>";
echo "插入失敗".$error_result."條數據!!!";
其中conn.php代碼如下:
[php] view plain print?
$mysql=mysql_connect("localhost","root","") or die("資料庫連接失敗!");
mysql_select_db("php_excel",$mysql);
mysql_query("set names utf8");
我的導入效果如下:
至此,從Excel文件讀取數據批量導入到Mysql資料庫完成。
⑺ excel導入sql,用sql語句
1.打開SQL
Server
Management
Studio,按圖中的路徑進入導入數據界面。
2.導入的時候需要將EXCEL的文件准備好,不能打開。點擊下一步。
3.數據源:選擇「Microsoft
Excel」除了EXCEL類型的數據,SQL還支持很多其它數據源類型。
4.選擇需要導入的EXCEL文件。點擊瀏覽,找到導入的文件確定。
5.再次確認文件路徑沒有問題,點擊下一步。
6.默認為是使用的WINODWS身份驗證,改為使用SQL身份驗證。輸入資料庫密碼,注意:資料庫,這里看看是不是導入的資料庫。也可以在這里臨時改變,選擇其它資料庫。
7.選擇導入數據EXCEL表內容範圍,若有幾個SHEET表,或一個SHEET表中有些數據不想導入,則可以編寫查詢指定的數據進行導入。點擊下一步。
8.選擇需要導入的SHEET表,比如我在這里將SHEET表名改為price,則導入後生面的SQL資料庫表為price$。點擊進入下一步。
9.點擊進入下一步。
10.在這里完整顯示了導入的信息,執行內容,再次確認無誤後,點擊完成,開始執行。
11.可以看到任務執行的過程和進度。
12.執行成功:可以看看執行結果,已傳輸1754行,表示從EXCEL表中導入1754條數據,包括列名標題。這樣就完成了,執行SQL查詢語句:SELECT
*
FROM
price$就可以查看已導入的數據內容。
⑻ excel如何導入sql表
在SQL SERVER中右擊資料庫,選擇菜單「任務」--「導入數據」即可。
在導入過程中,勾選將第一行做為列標題就可以,你還可以定義每一欄位的欄位類型。
⑼ excel如何導入sql資料庫表裡
利用Excel的CONCATENATE函數組裝每行記錄為一個SQL語句,之後將所有SQL語句保存為一個SQL文件,利用Oracle執行文件的方式導入數據到對應的表。