① 怎么将excel表导入sql server 2008
1、首先需要准备的是在电脑上创建一个Excel表格。
2、在SQL Server2008的企业管理器中选择想要导出的数据库。
3、右击选择任务---->导出数据库。
4、点击导出数据,出现如图界面。
5、单击逗下一步地按钮,就会出现选择导出数据的数据源对话框,如图所示。
6、单击逗下一步地按钮,则会出现选择目的对话框,如图所示。
7、选择需要的目标,选择以后就会出现下面的这个界面。
8、然后更改Excel文件路径,还有Excel版本。
9、选定目标数据库后,单击逗下一步地按钮,则出现指定表复制或查询对话框。
10、选择逗复制一个或多个表或视图的数据地。
11、单击逗下一步地按钮,则出现选择源表和视图对话框。
12、可以多选也可以单选,这里选择了一个。在这可以先预览数据,也可以编辑映射。
13、单击逗下一步地按钮,则会出现保存、运行包对话框,如图所示。
14、单击逗下一步地按钮,就会完成该向导对话框,如图所示。
15、点击完成,执行成功。
② 如何从Excel中向SQL SERVER 2008导入数据
第一步:建立数据库和数据表(按照自己的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数据库完成。
③ 请教如何将excle上面的数据批量导入至sql2008数据库
在查询分析器里,直接写 SQL语句:
如果是导入数据到现有表,则采用形式
INSERT INTO 表 SELECT * FROM OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$)
如果是导入数据并新增表,则采用形式
SELECT * INTO 表 FROM OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$)
SQL2005中直接可以实现导入功能 SQL2008不知道可不可以。 操作过程如下:
第一步:登录到 SQL Server Management Studio
第二步:在 “对象资源管理器 ”中右键单击 “管理 ”,在弹出列表中单击 “导入数据 ”
第三步:在 “导入向导 ”对话框中单击 “下一步 ”,进入到 “选择数据源 ”对话框,在 “数据源 ”列表中选择 “Microsoft Excel ”,同时选择相应的 Excel 文档,完成后单击 “下一步 ”(一定要勾选该对话框中的 “首行包含列名称 ”,因此它是将 Excel文档中的列标题为数据库表中的列项标题)
第四步:指定目标数据库服务,依次单击 “下一步 ”。。。。至到 “完成 ”
第五步:重新打到 SQL Server Management Studio,进入到导入的数据库表,可以发现所导入的 Excel文档数据。
④ sql2008怎么导入excel
1、打开要导入的Excel文件,观察第一列是为字段还是数据
打开SQLServer,在需要导入的数据点击右键 【任务】-【导入数据】
出现导入导出向导。
点击下一步 ,进入【选择数据源】页面,注意红框设置。
点击下一步 ,进入【选择目标】页面,注意红框设置。
点击下一步 ,进入【指定表复制或查询】页面,注意红框设置。
点击下一步 ,进入【选择源表和源视图】页面,注意红框设置。
下一步,直到完成。出现【执行结果页面】。
最后在SqlServer查询表。
⑤ sql server 2008怎么导入excel
1、选择要导入的数据库---任务---导入数据。
⑥ 如何在sqlserver2008中导入excel表数据并按列更改
那也是可以的,你excel表中条件列的值具有唯一性吗
第一个问题直接update就行;
第二个使用not Exists查询出数据库不存在的记录,然后将结果插入到数据库对应的表
⑦ sql server 2008怎么导入excel
1、首先需要准备的是在电脑上创建一个Excel表格。
2、在SQL Server2008的企业管理器中选择想要导出的数据库。
15、点击完成,执行成功。
⑧ 怎样把Excel文件资料导入SQL Server2008的数据库的表中
Excel导入SQLserver的表中前,保证Excel的表中列的顺序和数据库表的列的顺序保持一致,如果该列没有值,可以为空白。 打开SQL企业管理器(Microsoft SQL Server Management Studio ) 建议用SA身边登陆,如果Windows NT用户具有同等权限也可以登陆服务后,展开数据库服务器,会在最底下找到“管理”选项,单击右键,选择“导入数据”选项单击数据导入选项后,会出现导入向导画面,直接单击“下一步”,按提示操作即可
⑨ sql server 2008可以直接导入excel吗
--首先打开SSMS,然后点击左上角的【新建查询(N)】,在右边弹出的窗口中输入一下代码: 代码一: ---------------------------------------------------------------------------------------- use TEST --- ‘TEST’是数据库名字,你可以切换到你想要的数据库或直接输入数据库名字 ----根据系统需要使用这几段批处理命令打开相应功能 EXEC sp_configure 'show advanced options', 1; GO RECONFIGURE; GO EXEC sp_configure 'Ad Hoc Distributed Queries', 1; GO RECONFIGURE; GO ----以上为根据实际情况的可选命令 ----开始插入数据到TEST数据库的一个新表中 select * into newtable_name from OpenDataSource('Microsoft.Ace.OLEDB.12.0','Data Source="c:\ru.xlsx";Extended properties="Excel 12.0;HDR=Yes"')...[sheet1$] go ------------------------------------------------------------------------ P.S: 1: 执行这段代码之前,你需要准备导入的数据。 我用的是Excel 2007, Excel文件的名字为“ru”,放在C盘目录下。 2: 代码中的select * into newtable_name from ... 这是把excel中的数据插入到TEST数据库中,并同时新建表名为newtable_name存放插入的数据. 3: 代码中的Office2007的数据库驱动为“Microsoft.Ace.OLEDB.12.0”, 如果是Office2003的话应改成“Microsoft.Jet.OLEDB.4.0”, 还有Office2007中Excel的“Extended properties”中为“Excel 12.0” 而Office2003为“Excel 8.0” 4: 代码中'Data Source="c:\ru.xlsx" 就是要导入数据的文件存放路径. (注意后缀:Excel 2007的为.xlsx;Excel 2003的为.xls) 5: 代码中的...[sheet1$] 为表名,格式为:[XXX$]或者XXX$,不需要中括号也行,而且表名不能以数字开头(其实这是几乎所有编程语言的变量命名规则),切记! 没有修改过名字的话,Excel默认是shee1,shee2,shee3.... 6: 当然,你也可以使导入的数据,不用新建表.而是直接导入到数据库已有的表中, 只要稍微修改代码就可以了. 代码二: --------------------------------------------------------------------------------------- insert into 已存在的表名 (字段一,字段二) select A,B from OpenDataSource('Microsoft.Ace.OLEDB.12.0','Data Source="c:\ru.xlsx";Extended properties="Excel 12.0;HDR=Yes"')...[sheet1$] go --------------------------------------------------------------------------------------- 代码二中,A,B表示的意思是Excel中的A列和B列, 但是直接输入A,B是没有用的. 这里还要提醒一点,导入数据的时候,系统默认Excel的第一行数据是字段名. 所以,你可以把Excel的第一行的前两列数据改为A和B,这样就可以了! 如果Excel中的列数和数据库中的已存在的表的列数相等,也可以改成如下: 代码三: --------------------------------------------------------------------------------------- insert into 已存在的表名 select * from OpenDataSource('Microsoft.Ace.OLEDB.12.0','Data Source="c:\ru.xlsx";Extended properties="Excel 12.0;HDR=Yes"')...[sheet1$] go --------------------------------------------------------------------------------------- 当然,我们可以利用Data Import for Sql Server等工具来导入,也可以利用SQL Server 2008的DTS导入(在SQL Server Management Studio的选择你要导入到的数据库如:TEST,右键选择“任务”——“导入数据”即可.