简体   繁体   English

如何使用自动if语句将数据插入数据库?

[英]How to Insert data to database using automatic if statement?

I have some data containing the words 1951-2015 and I want to enter into the database with functions if the data is located containing the word 1951 then folder_id = 1, if 1952 then folder_id = 2, if 1953 then folder_id = 3, etc. 我有一些包含单词1951-2015的数据,如果要查找包含单词1951的数据,则我想使用函数进入数据库,然后folder_id = 1,如果1952然后则folder_id = 2,如果1953然后then folder_id = 3,依此类推。

Code: 码:

if (nama == "1951")
{
    string K2013GUpdate = @"INSERT INTO undangundnag (folder_id,identifier,filename) SELECT 1 + namaFile ,'" + file1.FName +
    "' WHERE not exists (select folder_id AND identifier AND filename FROM undangundnag WHERE folder_id=1 and identifier='" + namaFile 
     AND filename='" + file1.FName)";
    K2013GQuery.Step();
}
else if (nama == "1952")
{
    string K2013GUpdate = @"INSERT INTO undangundnag (folder_id,identifier,filename) SELECT 2 + namaFile ,'" + file1.FName +
    "' WHERE not exists (select folder_id AND identifier AND filename FROM undangundnag WHERE folder_id=2 and identifier='" + namaFile 
     AND filename='" + file1.FName)";
    K2013GQuery.Step();
}
else if (nama == "1953")
{
    string K2013GUpdate = @"INSERT INTO undangundnag (folder_id,identifier,filename) SELECT 3 + namaFile ,'" + file1.FName +
    "' WHERE not exists (select folder_id AND identifier AND filename FROM undangundnag WHERE folder_id=3 and identifier='" + namaFile 
     AND filename='" + file1.FName)";
    K2013GQuery.Step();
}

How do I automatically enter data into the database with if statement without using if one by one? 我如何使用if语句自动将数据输入数据库,而不用一一使用if?

If you have data residing in a fixed range from 1952 to 2015 then you can loop within the range instead of using if statement as below: 如果您将数据保留在1952年至2015年的固定范围内,则可以在该范围内循环,而不必使用if语句,如下所示:

int folder_id=0;
for(int i=1951;i<=2015;i++){
  folder_id++;
 // if you want to execute your query for all the values in the range then you can omit this 'if' statement and write query inside loop.
  if(nama==i){
 // write your query here with the folder_id
    break;
   }
}

And if you want to pass a specific data between 1952-2015 and want to generate folder_id according to your requirement then you can do as given below: 如果要在1952-2015年之间传递特定数据,并根据需要生成folder_id,则可以执行以下操作:

void getFolderID(nama){ //nama could be 1951 or 1955 or 1961....
int j=1950; // to get folder_id from 1951-2015
int folder_id=nama-j;
// write your query as desired below
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM