我正在尝试使用下面提到的代码更新访问表。但是,更新不会执行。它不会给我任何错误,但不会更新数据库。有什么建议么?
string Const = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=F:\\Db\\test.accdb";
OleDbCommand Cmd;
OleDbConnection con22 = new OleDbConnection(Const );
con22.Open();
string sql = "UPDATE CostT SET tFormSent='" + Selection1.Text + "',TName='" + UserName.Text + "',FormDate='" + FormDate.Text + "',where ReqNum=" + ReqNum.Text;
cmd = new OleDbCommand(sql, con22);
cmd.ExecuteNonQuery();
con22.Close();
MessageBox.Show("Form has been Updated");
Run Code Online (Sandbox Code Playgroud) 我是 sqlite 的新手,但我确实尝试自己解决这个问题:我在 stackoverflow 上尝试了各种教程和答案,但没有成功。您可能认识该代码。我找不到我理解或可以用于我的案例的代码示例。
我有一个应用程序,用户可以通过输入以下内容来创建角色:他们的名字、姓氏、年龄。
用户可以按 + 1 年,在这种情况下,我希望年龄列中的所有整数都增加 1 并向用户显示。所有角色显然都应该老一岁。这是我无法在我的应用程序中完成的。
您能否告诉我应该如何修改代码来完成我想要的事情,您能否解释一下您的代码是如何工作的?
MainActivity.java:
public class MainActivity extends Activity {
ListView lv;
EditText firstnameTxt,familynameTxt,ageTxt;
Button savebtn,retrieveBtn,yearBtn;
ArrayList<String> characters=new ArrayList<String>();
ArrayAdapter<String> adapter;
String updatedAge;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
firstnameTxt=(EditText) findViewById(R.id.firstnameTxt);
familynameTxt=(EditText) findViewById(R.id.familynameTxt);
ageTxt=(EditText) findViewById(R.id.ageTxt);
savebtn=(Button) findViewById(R.id.saveBtn);
retrieveBtn=(Button) findViewById(R.id.retrievebtn);
yearBtn=(Button) findViewById(R.id.yearBtn);
lv=(ListView) findViewById(R.id.listView1);
lv.setBackgroundColor(Color.LTGRAY);
adapter=new ArrayAdapter<String>(this,android.R.layout.simple_selectable_list_item,characters);
final DatabaseHelper db=new DatabaseHelper(this);
//EVENTS
savebtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//OPEN
db.openDB();
//INSERT …Run Code Online (Sandbox Code Playgroud) 我有一些 postgresql 表,我想知道是否有可能计算更新的行数?
更清楚的是能够计算表上可能发生的更新次数。
我需要将一个表中的行追加到现有表中。我在想类似以下的内容,但这给出了一个错误
select *
into table1
from (select *
from table1
union
select *
from table2) as tmp
Run Code Online (Sandbox Code Playgroud)
有没有办法使用ALTER TABLE或UPDATE与UNION?
我在 Postgresql 数据库中有一个表,其中包含列name和email,该name列已填充,但该email列为空。我还有一个 CSV 文件,其中包含列user并user_email已填充。如何email使用 CSV 文件更新列以匹配 和user以及name更新正确email的user_email?
我一直在寻找答案或浏览一些教程,但我不太确定如何表达问题,所以我无法找到任何答案。
这就是我的 Postgres 表现在的样子:
| name | email |
| joh | |
| alex | |
| adams | |
Run Code Online (Sandbox Code Playgroud)
这是我的 CSV 文件:
| user | user_eamil|
| joh | a@g.com |
| alex | a@g.com |
| adams | a@g.com |
Run Code Online (Sandbox Code Playgroud) 我有一个包含值的表:
dbid name userid
------------------------------
154 xyz NULL
987 xyz NULL
777 xyz 5
111 abc NULL
745 abc NULL
748 abc 6
Run Code Online (Sandbox Code Playgroud)
预期输出:
dbid name userid
------------------------------
154 xyz 5
987 xyz 5
777 xyz 5
111 abc 6
745 abc 6
748 abc 6
Run Code Online (Sandbox Code Playgroud)
userid 列中除一个名称对应的值外,所有空值均为空。我想在 userid 中为 name = 'xyz' 的所有行设置 5。同样,想要更新表以在 userid 中设置 6,其中 name = 'abc'。
对于上述场景,更新表的查询应该是什么?
注意:以上只是一个例子。我有一个包含数十万条记录的表。我无法在查询中写入 id 5 或 6。
我创建了一个视图,其中包含INNER JOINS一堆表,但根据 MySQL 规则,这些表似乎仍然可以更新,但更新数据似乎不起作用。这是 WorkBench 中所示的视图:
CREATE
ALGORITHM = UNDEFINED
VIEW `event_registrants` AS
SELECT
`event_details`.`DTT_EVT_start` AS `Event_Start`,
`attendee_meta`.`ATT_email` AS `ATT_email`,
`users`.`ID` AS `ID`,
`user_detail_tbl`.`first_name` AS `first_name`,
`user_detail_tbl`.`nickname` AS `nickname`,
`user_detail_tbl`.`last_name` AS `last_name`,
`registration`.`EVT_ID` AS `EVT_ID`,
`posts`.`post_title` AS `post_title`,
`misc_tbl`.`ANS_value` AS `ANS_value`
FROM
((((((`misc_tbl`
JOIN `registration` ON ((`misc_tbl`.`REG_ID` = `registration`.`REG_ID`)))
JOIN `event_details` ON ((`registration`.`EVT_ID` = `event_details`.`EVT_ID`)))
JOIN `posts` ON ((`posts`.`ID` = `registration`.`EVT_ID`)))
JOIN `attendee_meta` ON ((`registration`.`ATT_ID` = `attendee_meta`.`ATT_ID`)))
JOIN `users` ON ((`attendee_meta`.`ATT_email` = `users`.`user_email`)))
JOIN `user_detail_tbl` ON ((`users`.`ID` = …Run Code Online (Sandbox Code Playgroud) 我将 SQL 文件导入到数据库中,但出现问题。句子/短语末尾的所有标点符号都有额外的空格。
例子:
This is a sentence .
This , as you can see , is a problem .
Do it !
Run Code Online (Sandbox Code Playgroud)
应该:
This is a sentence.
This, as you can see, is a problem.
Do it!
Run Code Online (Sandbox Code Playgroud)
为了更正,我计划在这种情况下在 phpMyAdmin 上运行 SQL 命令
UPDATE book SET content = REPLACE(content,' .','.');
UPDATE book SET content = REPLACE(content,' ,',',');
UPDATE book SET content = REPLACE(content,' ?','?');
UPDATE book SET content = REPLACE(content,' !','!');
UPDATE book SET content = REPLACE(content,' :',':');
Run Code Online (Sandbox Code Playgroud)
到目前为止,一切都很好。但是当我在这样的分号上尝试时
UPDATE …Run Code Online (Sandbox Code Playgroud) 我有一个 JSON 类型列,我尝试使用 MySQL 允许我使用的本机 JSON 函数: https: //dev.mysql.com/doc/refman/8.0/en/json-modification-functions.html
我特别寻找一种更新 JSON 的方法。在同一个 JSON 数组中添加多个值。文档在这一点上有点粗糙。
我知道不建议将 JSON 存储在数据库中,但我别无选择。
我有一个非常大的表,有 100M 行,我想在其中更新一列的值,该值基于另一列。下面给出了显示我想要执行的操作的示例查询:
UPDATE mytable SET col2 = 'ABCD'
WHERE col1 is not null
Run Code Online (Sandbox Code Playgroud)
这是具有多个从属的实时环境中的主数据库,我想在不锁定表或影响实时环境性能的情况下更新它。最有效的方法是什么?我正在考虑制作一个程序,使用 limit 之类的方法批量更新 1000 或 10000 行的行,但不太确定如何做到这一点,因为我不太熟悉 Postgres 及其陷阱。哦,两列都没有任何索引,但表有其他列有。
我希望有一个示例程序代码。
谢谢。
sql-update ×10
sql ×4
mysql ×3
postgresql ×3
sql-server ×2
alter-table ×1
android ×1
c# ×1
database ×1
java ×1
json ×1
large-data ×1
ms-access ×1
replace ×1
sqlite ×1
t-sql ×1
union ×1
view ×1