我必须将大量数据插入数据库中,并且表也是动态创建的。
首先创建了UserDefined DataTypes
-- This is my user defined type
CREATE TYPE [dbo].[Custom_block] AS TABLE(
[Name] [nvarchar](200) NULL,
[population] [nvarchar](200) NULL
)
然后,我必须将DataTable (C#)插入到SQL表中。
--My StoredProcedure :
CREATE PROCEDURE dumpData(
@myTableT
我正在编写一个查询,将数据从一个表导入到一个新表中。我需要插入新表中不存在的记录,并更新存在的记录。我正在尝试使用合并"upsert“方法。
由于客户端的数据库和应用程序结构,我有一些独特的问题。我要插入的表有一个惟一的ID字段,对于每个新行,该字段递增1,但是该表不执行自动递增;insert语句需要提取目标表中的最高ID,并为新记录加1。
从我的研究来看,我不知道如何使用MERGE来做到这一点。我没有创建序列的数据库权限。我尝试了很多方法,但目前我的查询如下所示:
MERGE
dbo.targetTable as target
USING
dbo.sourceTabl
我每天都会得到一个CSV文件,作为appr的一个访问表(下文: targetTable)的更新。20到30.000行。为此,我创建了tempTable,其中使用ADODB.Stream将CSV-File加载到其中,并执行一些检查,在成功检查之后,我将所有条目加载到tempTable中。 我可以完全删除目标并插入tempTable中的所有条目,但会检查是否有新条目(这意味着它已经在过去交付)。为此,我有一个“discovered”列,其中存储此特定条目首次出现的日期。我将检查tempTable中的所有列和targetTable中的所有列。 这个表有将近15列,我的第一个解决方案是这样的: DE
我有一个返回结果集的存储过程。之后,我将这个结果集插入到创建的real表中。然后我使用这个真实的表来创建SSRS报告。
所以,就像这样:
CREATE PROCEDURE Test
AS
DECLARE @TempTable TABLE(..)
INSERT INTO @TempTable
SELECT...
FROM ...
WHERE ...
SELECT * FROM @TempTable
--============================
INSERT INTO RealTable EXEC [dbo].[Test
我使用的是Server 2012,我希望使用T执行以下操作:
创建一个临时表(让我们称之为#temptable)。
使用#temptable语句将位于现有数据库中的表的值插入到SELECT中。
编写一个SELECT语句来查询#temptable。
我尝试了以下方法,但语法似乎不正确,或者我试图做的事情是不允许的。
USE MyDatabase
CREATE TABLE #temptable
GO
INSERT INTO #TempTable
SELECT [Col A], [Col B], [Col C]
FROM MYLIST
WHERE [MONTH OF S
我有一个动态SQl查询,如下
Create #TempTable(ColumnA int, ColumnB int, ColumnC Int)
Insert into #TempTable(select A,B,C from Table1 where some condition formed dynamically)
Insert into #TempTable(select A,B,C from Table1 where some condition formed dynamically)
Insert into #TempTable(select A,B,C from Table1
我正在使用2008。我正在尝试创建一个存储过程,以便将几行数据(答案)合并为目标表上的一行。这使用了答案表中的“table_name”字段和“column_name”字段。数据看起来如下所示:
answers table
--------------
id int
table_name varchar
column_name varchar
answer_value varchar
因此,目标表(insert/update)将来自“table _name”。分析器中的每一行将填充目标表上的一列。
table_name_1 table
--------------
id int
column_n
我需要运行140,000条INSERT语句。我试图将记录插入到数据库表中,然后将创建的PK输入到临时表中,然后返回。看起来是这样的:
CREATE PROCEDURE sp_MassInsertProcedure
@PassInVariable int
AS
CREATE TABLE #TempTable(OriginalID int IDENTITY(1,1), NewID int);
--These two inserts are essentially repeated 70,000 times
INSERT INTO MyDBTable (someth
PROCEDURE add_values
AS BEGIN
INSERT INTO TableA
SELECT id, name
FROM TableC ("This selection will return multiple records")
当它在TableA中插入时,我希望为在tableA中插入的特定记录插入到另一个表(TableB)中
注意: tableA和TableB中的列是不同的,在插入到TableB之前调用函数是否明智,因为我希望根据插入到TableA中的id执行某些gets和sets。
我得到了从阶段到维度表的加载情况。当加载到目标表时,只需要插入New行,而不是插入现有行。下面是我的查询蓝图。出于某些原因,我首先插入临时表,然后从临时表插入到目标表。
IF OBJECT_ID('tempdb..#Temp_Table') IS NOT NULL
DROP TABLE #Temp_Table;
CREATE TABLE #Temp_Table(col1 smallint identity(2,1),
col2 varchar(100),
col3 v
我有一个查询需要一天多次运行。此查询正在将数据从一个数据库导入到另一个数据库。
目标表结构为:
Id Date Department Location PersonId Starttime EndTime State
1 2012-01-01 2 5 200 12:00:00.000 15:00:00.000 2
应用程序还可以向目标表插入数据。当源(临时表)表中存在具有另一状态的记录时,应用程序插入的记录也可能不会被更新。
为了实现这一点,我创建了一个解决方案。我将在目标表中创建