标签: sql-insert

Firebird - 使用Select和值与Insert into

我正在写一个存储过程.我知道如何从传递值select成insert.

但是,是否有可能与INSERT INTO使用values,并Select在同一时间?

Insert into table_1 (f1, f2, f3, f4, f5, f6, f7, f8, f9,
      FL1, FL2, FL3)

      Select :p_f1, :v_f2, :p_f3, :p_f4,
        abs(:v_f5 * :p_f5),
        abs(:v_f6 * :p_f6),
        :v_f7, :v_f8, :v_9 from RDB$DATABASE
      UNION
      Select f_lookup_id from lookup_table where (f_res >= :v_res) And (f2_lookup_id = :p_id1)
      UNION
      Select f_lookup_id from lookup_table where (f_res >= :v_res) And (f2_lookup_id = :p_id2)
      UNION
      Select f_lookup_id from lookup_table where (f_res >= :v_res) And …
Run Code Online (Sandbox Code Playgroud)

firebird sql-insert

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

我想在mysql中插入这个符号(')

在一个sql表中,我有一个字段作为高度,我想插入高度为5英尺6英寸的5英尺6英寸.我怎样才能做到这一点?

使用简单的insert命令时会抛出错误.什么是解决这个问题的可行方法?

mysql sql oracle sql-insert

2
推荐指数
1
解决办法
2918
查看次数

插入选择查询

我希望有人可以帮助我,我正在学习c#到目前为止,我已经写了几个有用的程序,但现在我从一个特定的问题难题,我已经搜索了我认为我需要的查询.这是我的代码

        try
        {
            con.Open();
            cmd = new SqlCommand("SELECT * from LMNormal", con);
            cmd.CommandText = ("INSERT INTO LMNormal (upc,cert_code,description,cost,normal_price,pricemethod,groupprice,quantity,special_price,specialcost,specialpricemethod,specialgroupprice,specialquantity,start_date,end_date,pack,size,unitofmeasure) SELECT (upc,cert_code,description,cost,normal_price,pricemethod,groupprice,quantity,special_price,specialcost,specialpricemethod,specialgroupprice,specialquantity,start_date,end_date,pack,size,unitofmeasure) from products where (modified >= @now) and (advertised=@false)");
            cmd.Parameters.AddWithValue("@now", now);
            cmd.Parameters.AddWithValue("@false", selected);
            cmd.Connection = con;
            cmd.ExecuteNonQuery();
            timer1.Start();
            con.Close();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);

        }
Run Code Online (Sandbox Code Playgroud)

当程序执行时,它会捕获我的错误,并在''附近说错误的同义词,我很难找出这个逗号的位置.

感谢您的任何意见

c# sql sql-server sql-insert

2
推荐指数
1
解决办法
6847
查看次数

"INSERT INTO"不起作用

我知道有几个关于为什么INSERT INTO不起作用的主题,但我没有找到任何解决方案.

所以问题是我想在我的表中插入新记录.代码是:

    $query = "INSERT INTO cms_galleryrsrc(_filename) VALUES ('$filename')";
    mysqli_query($db, $query);
Run Code Online (Sandbox Code Playgroud)

MySQL表看起来像: cms_galleryrsrc[_id (int, AUTOINCREMENT); _filename (varchar(255))]

它只是没有做任何事情......

注意:例如UPDATE,SELECT * FROM工作正常.请帮我 :)

php mysql sql sql-insert

2
推荐指数
1
解决办法
2439
查看次数

在Postgres中SELECT*FROM NEW TABLE等价物

在DB2中,我可以执行一个看起来像这样的命令来从插入的行中检索信息:

SELECT *
FROM NEW TABLE (
    INSERT INTO phone_book
    VALUES ( 'Peter Doe','555-2323' )
) AS t
Run Code Online (Sandbox Code Playgroud)

我如何在Postgres中做到这一点?

有办法检索序列,但我需要检索任意列.

我希望将选择与插入合并是出于性能原因.这样我只需要执行一个语句来插入值并从插入中选择值.插入的值来自subselect而不是values子句.我只需要插入1行.

该示例代码取自维基百科插入文章

sql postgresql sql-insert

2
推荐指数
1
解决办法
863
查看次数

SQLite - 为插入或更新创建触发器

这是否可以在SQLite中为插入和更新操作创建一个触发器?我的意思是,像这样:

CREATE TRIGGER dbo.TR_TableName_TriggerName
    ON dbo.TableName
    AFTER INSERT, UPDATE, DELETE
AS
BEGIN
    SET NOCOUNT ON;

    IF NOT EXISTS(SELECT * FROM INSERTED)
        -- DELETE
        PRINT 'DELETE';
    ELSE
    BEGIN
        IF NOT EXISTS(SELECT * FROM DELETED)
            -- INSERT
            PRINT 'INSERT';
        ELSE
            -- UPDATE
            PRINT 'UPDATE';
    END
END;
Run Code Online (Sandbox Code Playgroud)

这是MS SQL我认为,源:插入更新触发器如何确定是否插入或更新


编辑:是否可以为多个表创建一个触发器?

sqlite triggers sql-update sql-insert

2
推荐指数
1
解决办法
3448
查看次数

重构循环SQL插入

此插入语句有效.但是,我希望也许有人可以教我一种更有效的方法来进行这种查询.这就是我所拥有的......

我有一个名为Source的表,其中DealerID是一个非唯一的ID(无论如何都在这个表中).对于每个DealerID,有多个名称.例:

15  BillBoard
15  Event
15  Newspaper

16  BillBoard
16  Event
16  Newspaper
Run Code Online (Sandbox Code Playgroud)

我知道我知道.这是存储此数据的非常低效的方法.我们正在处理遗留应用程序,我现在无法彻底改变这种数据结构.所以,我需要做的是为每个DealerID添加两个新记录.一个用于"电话",一个用于"互联网".所以在插入之后,它看起来像这样:

15  BillBoard
15  Event
15  Newspaper
15  Phone
15  Internet

16  BillBoard
16  Event
16  Newspaper
16  Phone
16  Internet
Run Code Online (Sandbox Code Playgroud)

下面的sql语句有效,但我想知道是否有更好的方法...

declare @SourceTemp table (
   [Id] int identity (1, 1) not null,
   [DealerId] int
)

insert into @SourceTemp select distinct DealerId from Source where DealerId is not null

declare @dealerid int
declare @rowcount int = 1
declare @idcount int
select @idcount = max(Id) from  @SourceTemp …
Run Code Online (Sandbox Code Playgroud)

sql database sql-server sql-insert

2
推荐指数
1
解决办法
45
查看次数

Node.js和Oracle DB:插入查询语句不起作用

根据SQL查询,我遇到了问题。我的插入查询返回的答案是元组已成功插入,但表中实际上没有元组。因此由于某些原因,它不起作用。查询:

connection.execute(
                "INSERT INTO "+table+
                " VALUES "+
                "(:0, :1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11)",
                [objIns.attr1, objIns.attr2, objIns.attr3, objIns.attr4, objIns.attr5, objIns.attr6, objIns.attr7, objIns.attr8, objIns.attr9, objIns.attr10, objIns.attr11, objIns.attr12],
                function(err, result){
                    if (err) {
                        console.error("insert2",err.message); 
                        callback(err.message)
                    } else{
                    console.log("Rows inserted " + result.rowsAffected);
                    }
                });
Run Code Online (Sandbox Code Playgroud)

谢谢。

** UPDATE_SOLUTION1:添加到您的服务器脚本中:oracledb.autoCommit = true; **

** UPDATE_SOLUTION2:将{autoCommit:true}添加到execute()**

oracle node.js sql-insert

2
推荐指数
1
解决办法
4454
查看次数

带有工人的PostgreSQL并行批量INSERT不并行化

我的情况:

  • 10名工人
  • 数据库已设置100个最大连接
  • 每个工人都有自己的数据库连接(最多10个连接)
  • 每个工作人员开始一个事务(开始;提交;)
  • 每个工作人员将数据插入同一表中,并在事务内批量插入
  • 要插入的数据,例如一百万行
  • 每个工人处理1000行(每批次1000个)

每个工人的查询:

BEGIN;
  INSERT INTO "test_tbl" ("id",...) VALUES 
    (...),(...),...[1000 entries]... RETURNING id;
COMMIT;
Run Code Online (Sandbox Code Playgroud)

表test_tbl仅PRIMARY KEY (id)具有索引约束CREATE UNIQUE INDEX formulas_pkey ON formulas USING btree (id)

问题

经过许多小时的分析,它接缝的是工人等另一个工人完成了插入。为什么工人不能同时将新数据插入同一张表?

更新

我删除了所有约束和所有索引(主键,外键等),但仍然存在相同的问题。没有并行化。

补充说明:

  • 要插入的数据,例如一百万行
  • 每个工人处理1000行(每批次1000个)

postgresql parallel-processing multithreading bulkinsert sql-insert

2
推荐指数
1
解决办法
2899
查看次数

没有任何列值的Postgres插入。都是默认的

我在Postgres中有一个表,该表仅具有默认列值(id,created_at)。

我可以插入此表的唯一方法是

INSERT INTO pages(id) VALUES(DEFAULT) RETURNING id;
Run Code Online (Sandbox Code Playgroud)

我为什么不能这样做:

INSERT INTO pages RETURNING id;
Run Code Online (Sandbox Code Playgroud)

只是好奇。

sql postgresql sql-insert

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