标签: insert

INSERT上的返回ID?

我有一个INSERT查询,我希望DB返回刚刚插入的行的ID.

sqlString = "INSERT INTO MagicBoxes (OwnerID, Key, Name, Permissions, Active, LastUpdated) VALUES (@OwnerID, @BoxKey, @BoxName, 0, 1, @Date) SET @ID = SCOPE_IDENTITY();";
cmd = new SqlCommand(sqlString, con);
cmd.Parameters.AddWithValue("@OwnerID", OwnerID);
cmd.Parameters.AddWithValue("@BoxKey", BoxKey);
cmd.Parameters.AddWithValue("@BoxName", BoxName);
cmd.Parameters.AddWithValue("@Username", Username);
cmd.Parameters.AddWithValue("@Date", DateTime.Now);
cmd.ExecuteNonQuery();
Run Code Online (Sandbox Code Playgroud)

我目前有这个,我不确定接下来我需要做什么......

c# sql sql-server insert

28
推荐指数
4
解决办法
5万
查看次数

SQL - 插入行并返回主键

我有点诙谐的问题.比如说,我在一个存在主键的表中插入了一些包含一些数据的行.如何"选择"刚刚插入的行的主键?

我应该更具体,并提到我目前正在使用SQLite.

sql sqlite row insert primary-key

28
推荐指数
4
解决办法
7万
查看次数

有效地向ObservableCollection添加一系列值

我有一个ObservableCollection项目绑定到我的视图中的列表控件.

我有一种情况需要在集合的开头添加一大块值. Collection<T>.Insertdocumentation将每个插入指定为O(n)操作,每个插入也生成一个CollectionChanged通知.

因此,我理想地希望在一次移动中插入整个范围的项目,这意味着只有一个基础列表的随机播放,并且希望有一个CollectionChanged通知(可能是"重置").

Collection<T>不公开任何执行此操作的方法.List<T>InsertRange(),但是IList<T>,这Collection<T>暴露了通过其Items属性不会.

有没有办法做到这一点?

c# collections performance insert observablecollection

28
推荐指数
2
解决办法
2万
查看次数

PostgreSQL:在插入内部进行子选择

我有一张名为map_tags:

map_id | map_license | map_desc
Run Code Online (Sandbox Code Playgroud)

另一个table(widgets),其记录包含对记录的外键引用(1到1)map_tags:

widget_id | map_id | widget_name
Run Code Online (Sandbox Code Playgroud)

鉴于所有map_licenses都是唯一的约束(但是没有设置为键map_tags),那么如果我有a map_license和a widget_name,我想widgets在同一个SQL语句的所有内部执行插入:

INSERT INTO
    widgets w
(
    map_id,
    widget_name
)
VALUES (
    (
        SELECT
            mt.map_id
        FROM
            map_tags mt
        WHERE
            // This should work and return a single record because map_license is unique
            mt.map_license = '12345'
    ),
    'Bupo'
)
Run Code Online (Sandbox Code Playgroud)

相信我走在正确的轨道上但是马上知道这对于Postgres来说这是不正确的SQL.有没有人知道实现这样一个查询的正确方法?

sql postgresql insert subquery

28
推荐指数
2
解决办法
3万
查看次数

SQL插入触发器以更新INSERTED表值

我想创建一个Insert触发器,如果​​它们为null,则更新所有插入行的值,根据inserted表中的另一列,新值应从不同的表中获取.

我试过了:

UPDATE INSERTED
SET TheColumnToBeUpdated = 
    (
    SELECT TheValueCol FROM AnotherTable.ValueCol
    WHERE AnotherTable.ValudCol1 = INSERTED.ValueCol1
    )
WHERE ValueCol IS NULL
Run Code Online (Sandbox Code Playgroud)

但我得到这个错误:

Msg 286, Level 16, State 1, Procedure ThisTable_INSERT, Line 15
The logical tables INSERTED and DELETED cannot be updated.
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

triggers sql-server-2005 insert

27
推荐指数
2
解决办法
8万
查看次数

在Perl中,如何在文件中更改,删除或插入行,或者附加到文件的开头?

我想通过修改,删除或插入行或附加到文件的开头来更改文件的内容.我怎么能在Perl中做到这一点?


这是一个问题,官方FAQ.我们将perlfaq导入Stack Overflow.

perl file insert append

27
推荐指数
1
解决办法
7万
查看次数

从逗号分隔的varchar-list插入INTO TABLE

也许我没有看到树木,但我被卡住了,所以问题是:

如何将逗号分隔的varchar值列表导入/插入到表中?我的意思不是这样的:

  • '12345678,87654321,11223344' 但是这个:
  • '12345678','87654321','11223344'

我有一个Split功能,但在这种情况下似乎没用,不是吗?

这是一个简单的(模拟SQL)示例来显示我的意思:

Create Table #IMEIS(
    imei varchar(15)
)
INTO INTO #IMEIS(imei)
    SELECT * FROM ('012251000362843', '012251001084784', '012251001168744', '012273007269862', '012291000080227', '012291000383084', '012291000448515')
SELECT * from #IMEIS
DROP TABLE #IMEIS;
Run Code Online (Sandbox Code Playgroud)

先感谢您.

sql t-sql sql-server-2005 insert

27
推荐指数
3
解决办法
12万
查看次数

在将字符串插入数据库期间单引号转义

使用"'"时插入失败.示例字符串是:他是个男孩.我试图使用转义符号跳过"'",但我相信这不是正确的方法.

textBox3.Text.Replace("'", " \'");
string sql= "insert into gtable (1text,1memo) values ('"+textBox3.Text+"',null)";
        OleDbCommand cmd = new OleDbCommand(sql, con);

        con.Open();
        cmd.ExecuteNonQuery();
        con.Close();
Run Code Online (Sandbox Code Playgroud)

我确实可以选择用"`"替换"'",但这也会改变数据库中的文本.我希望保持"'"相同,并将其插入到数据库中.

c# database insert special-characters

27
推荐指数
3
解决办法
8万
查看次数

MySQL触发器插入/更新事件

所以我有两张这样的桌子......

ext_words
-------------
| id | word |
-------------
| 1  | this |
-------------
| 2  | that |
-------------
| 3  | this |
-------------

ext_words_count
---------------------
| id | word | count |
---------------------
| 1  | this |   2   |
---------------------
| 2  | that |   1   |
---------------------
Run Code Online (Sandbox Code Playgroud)

我正在尝试创建一个触发器,它将:

  • 更新ext_words_count.countext_words.word更新.

使事情进一步复杂化,

  • 如果ext_words.word在更新ext_words_count时不存在ext_words,我想将其插入ext_words_count并设置count为1.

我一直在寻找类似的问题:
1. 使用自动增量字段插入触发器之前/之后,以及
2. 使用触发器更新另一个数据库中的表来
尝试组合2.这是我到目前为止所拥有的:

DELIMITER $$ …
Run Code Online (Sandbox Code Playgroud)

mysql triggers insert insert-update

27
推荐指数
1
解决办法
7万
查看次数

SQL INSERT基于SELECT结果

请原谅我,因为我对SQL比较陌生.但我试图从一个表上的SELECT查询中获取修改后的数据,并使用它将数据填充到另一个表中.

SELECT ID FROM TABLE WHERE VALUE=10
Run Code Online (Sandbox Code Playgroud)

我想将结果ID插入另一个表中,但修改后的值为:

1stString.ID.2ndString
Run Code Online (Sandbox Code Playgroud)

我已经找到了如何在插入中使用SELECT中的ID的答案,但是在尝试连接时我似乎无法使其工作.我正在插入其他值,但它们是文字(我正在尝试初始化另一个表中给出的ID的默认键设置.

使用MS SQL Studio 2008,顺便说一句.

sql insert

26
推荐指数
2
解决办法
4万
查看次数