Base de datos: varias formas de importar datos de Excel

1. Importar datos de Excel desde SQL Server

inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
A continuación, haga clic en SIGUIENTE hasta que se complete
inserte la descripción de la imagen aquí
En este momento, los datos de EXCEL se importan a SQL Server:
inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

Dos, consejos para importar datos de Excel

El truco es usar el método de copiar y pegar directamente:

Nota: Este método solo es adecuado para agregar una pequeña cantidad de datos. Si son cientos de miles de filas de datos, no se pueden importar de esta manera.

Como se muestra en la figura, copiamos directamente los datos en Excel:
inserte la descripción de la imagen aquí
haga clic con el botón derecho en la tabla PTYPES, seleccione las primeras 2002 filas para editar:
inserte la descripción de la imagen aquí
haga clic con el botón derecho y pegue directamente:
inserte la descripción de la imagen aquí
en este punto, los datos se pueden importar directamente:
inserte la descripción de la imagen aquí

3. Importe datos de Excel usando Microsoft.ACE.OLEDB

Primero instale el paquete:
inserte la descripción de la imagen aquí
ejecute el siguiente código para importar los datos en la tabla de Excel:

SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','Excel 12.0;Database=D:\S072003DBS\食品销售数据\类别.XLSX',[类别$]);

inserte la descripción de la imagen aquí

Si se produce un error, consulte el siguiente código:

	-- 报错一:SQLServer阻止了对组件'AdHocDistributedQueries'的STATEMENT'OpenRowset/OpenDatasource'的访问,
	-- 因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用。
	-- sp_configure启用'AdHocDistributedQueries'。

	-- 解决方法:
	
	-- 启用Ad Hoc Distributed Queries:
	exec sp_configure 'show advanced options',1
    reconfigure
    exec sp_configure 'Ad Hoc Distributed Queries',1
    reconfigure

	-- 为了安全,使用完成后,关闭Ad Hoc Distributed Queries
	exec sp_configure 'Ad Hoc Distributed Queries',0
	reconfigure
	exec sp_configure 'show advanced options',0
	reconfigure

	-- 报错二:无法创建链接服务器“(null)”的 OLE DB 访问接口“Microsoft.ACE.OLEDB.12.0”的实例。
	-- 解决方法:
	
	 --允许在进程中使用ACE.OLEDB.12
    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1
    --允许动态参数
    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1

Cuarto, agregue manualmente una fila de datos

	INSERT INTO PTYPES (PTID,PTNAME) VALUES(101,'细粮')

inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí

5. Agregue manualmente varias filas de datos

	INSERT INTO PTYPES (PTID,PTNAME) VALUES
	(102,'有机蔬菜'),(103,'有机粮食'),(104,'有机水果')

inserte la descripción de la imagen aquí

5. Resuelva la falla de importación causada por la falta de coincidencia de tipos

inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí
Se encontró que falló la siguiente importación: El
inserte la descripción de la imagen aquí
motivo es que se definen los tipos de proveedores y categorías INT, pero en excelellos son de tipo string, por lo que falla la importación:
inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí
Solución:
ignore ambos. En consecuencia, ambos deben configurarse para permitir valores nulos en la base de datos.
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí
En este punto, la importación es exitosa:
inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/wxfighting/article/details/123878353
Recomendado
Clasificación