#ifndef __LCC__
#define __LCC__
#endif
#include <stdio.h>
#include <mysql.h>
#include <string.h>
int main(int argc, char *argv[])
{
MYSQL mysql_conn; /* Connection handle */
char my_query[1000];
MYSQL_RES *mysql_result;
MYSQL_ROW mysql_row;
int f1,f2,num_row,num_col;
int i,num,k;
int j=0;
char *Parameters[100];
if (mysql_init(&mysql_conn) != NULL)
{
if (mysql_real_connect(
&mysql_conn, "localhost", "root",
"mjy123456", "company", MYSQL_PORT,
NULL, 0) != NULL)
{
//解析输入命令
if(strcmp(argv[1],"company_query")!=0)
{
//printf("%s\n",argv[1]);
printf("命令名输入错误!");
return 0;
}
for(i=2;i<argc;i++)
{
if(strcmp(argv[i],"-q")==0)
{
num = atoi(argv[i+1]);
//printf("查询序号 num = %d\n",num);
i++;
if(num < 1 || num>9)
{
printf("查询序号不存在");
return 0;
}
}
if(strcmp(argv[i],"-p")==0)
{
//printf("参数列表:\n");
for(k=i+1;k<argc;k++)
{
Parameters[j]=argv[k];
//printf("%d %s\n",j,Parameters[j]);
j++;
}
break;
}
}
switch(num)
{
case 1:
{
char *pno;
pno = Parameters[0];
char *p0 = "select ESSN from WORKS_ON where PNO = '";
char *p01 = "'";
strcpy(my_query,p0);
strcat(my_query,pno);
strcat(my_query,p01);
break;
}
case 2:
{
char *pname=Parameters[0];
char *p1 = "Select ENAME \
from employee,works_on,project \
where employee.ESSN = works_on.ESSN and project.PNO=works_on.PNO and project.PNAME ='";
char *p12 = "'";
strcpy(my_query,p1);
strcat(my_query,pname);
strcat(my_query,p12);
break;
}
case 3:
{
char *dname=Parameters[0];
//gets(dname);
char *p2 = "Select ENAME,ADDRESS \
from employee,department \
where employee.DNO = department.DNO and department.DNAME ='";
char *p22 ="'";
strcpy(my_query,p2);
strcat(my_query,dname);
strcat(my_query,p22);
free(dname);
break;
}
case 4:
{
char *dname=Parameters[0];
char *salary=Parameters[1];
char *p30 = "Select ENAME,ADDRESS from employee,department where employee.DNO = department.DNO and department.DNAME ='";
char *p301 = "'";
strcpy(my_query,p30);
strcat(my_query,dname);
strcat(my_query,p301);
char *p31 = " and employee.SALARY < ";
strcat(my_query,p31);
strcat(my_query,salary);
break;
}
case 5:
{
char *pno=Parameters[0];
//gets(pno);
char *p4 = "Select ENAME from employee,works_on where employee.ESSN=works_on.ESSN and works_on.PNO !='";
char *p41 = "'";
strcpy(my_query,p4);
strcat(my_query,pno);
strcat(my_query,p41);
free(pno);
break;
}
case 6:
{
char *ename=Parameters[0];
char *p5 = "Select ENAME,DNAME from employee,department where employee.DNO = department.DNO and employee.superssn in (Select ESSN from employee where ENAME = '";
char *p52 = "'";
strcpy(my_query,p5);
char *p51 = ")";
strcat(my_query,ename);
strcat(my_query,p52);
strcat(my_query,p51);
break;
}
case 7:
{
char *pno1 = Parameters[0];
char *pno2 = Parameters[1];
char *p60 = "Select ESSN from employee where ESSN in (Select ESSN from works_on where PNO ='";
char *p61 = ") and ESSN in (Select ESSN from works_on where PNO ='";
char *p62 = ")";
char *p63 = "'";
strcpy(my_query,p60);
strcat(my_query,pno1);
strcat(my_query,p63);
strcat(my_query,p61);
strcat(my_query,pno2);
strcat(my_query,p63);
strcat(my_query,p62);
break;
}
case 8:
{
char *salary=Parameters[0];
char *p7 ="Select DNAME from department where DNO in \
(Select DNO from employee \
group by DNO having avg(SALARY) < ";
char *p71 = ")";
strcpy(my_query,p7);
strcat(my_query,salary);
strcat(my_query,p71);
break;
}
default:
{
char *n=Parameters[0];
char *hour =Parameters[1];
char *p8 = "Select ENAME from employee where ESSN in \
(Select ESSN from works_on \
group by ESSN having count(DNO)>=";
char *p81 = " and sum(HOURS)<=";
char *p82 = ")";
strcpy(my_query,p8);
strcat(my_query,n);
strcat(my_query,p81);
strcat(my_query,hour);
strcat(my_query,p82);
break;
}
}
//数据库query
mysql_query(&mysql_conn,"set names gbk");
mysql_query(
&mysql_conn,my_query);
mysql_result = mysql_store_result(&mysql_conn);
num_row = mysql_num_rows(mysql_result);
num_col = mysql_num_fields(mysql_result);
for(f1=0; f1<num_row; f1++)
{
mysql_row = mysql_fetch_row(mysql_result);
for(f2=0; f2<num_col; f2++)
{
printf("%s \t",mysql_row[f2]);
}
printf("\n");
}
}
else
printf("Query fails\n");
/* Free the result to release the heap memory*/
}
else
{
int i = mysql_errno(&mysql_conn);
const char *s = mysql_errno(&mysql_conn);
printf("Connection fails(ERROR %d): %s\n",i,s);
}
mysql_free_result(mysql_result);
//free(my_query);
mysql_close(&mysql_conn);
return 0;
}
没有合适的资源?快使用搜索试试~ 我知道了~
mysql-company.zip_company
共91个文件
sample:9个
master:4个
head:2个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 5 浏览量
2022-09-21
20:10:45
上传
评论
收藏 226KB ZIP 举报
温馨提示
哈工大计算机数据库,实现高级语言c对数据库Mysql进行操作,编译成exe,进行命令行操作
资源推荐
资源详情
资源评论
收起资源包目录
mysql-company.zip (91个子文件)
mysql-company
bin
Debug
mysql-company.exe 45KB
main.c 8KB
mysql-company.layout 359B
obj
Debug
main.o 17KB
.git
index 685B
hooks
pre-push.sample 1KB
prepare-commit-msg.sample 1KB
applypatch-msg.sample 478B
pre-commit.sample 2KB
pre-applypatch.sample 424B
commit-msg.sample 896B
pre-rebase.sample 5KB
update.sample 4KB
post-update.sample 189B
config 335B
description 73B
refs
tags
heads
master 41B
remotes
origin
master 41B
logs
refs
heads
master 1KB
remotes
origin
master 852B
HEAD 1KB
objects
75
8561411a14150ee2e11dcd610b0ccd913e0c54 210B
91
51b95d362a64d63a6167f6e348c49198c436dd 702B
fc
4e9eb4bd0762927fc2b4e66882414161223ef6 491B
36
8e983ccc841355528a77d6deb0a4f0fc02f8ea 7KB
27e6b1b6602f4faa8842e60a15a68515d08fc0 493B
6c
7dcc28882f8de1a4a40febfd77ad00183e2c40 493B
4b
73655777ac994bbae9d23d0a366143b266de84 47B
a7
0227fc74f7c89c4e88bb456f765e1e4d6a3bfe 62B
e0
b003dd31994e4b71f6aaf4a2b385c0578455cc 62B
d0
1ef8e366a3b630e46ffac305fa67904636c7f4 47B
5134d203ddac62acdc7f61602d65611d8549e4 48B
a3
997c08951f4ba748df0b956f823ecfd3365c18 51B
07
479d827954944e8bc6cec242673faabe404f97 209B
2d
26b7bd51a25fdb21c979e94c4b66bd5889d1a6 47B
a2b7a7573d8afb52c0e4078933b45d22f225c9 209B
37
96c1429439bdc29f14a1a7c6943059a65af1c9 48B
d9
00ab8c3ba01582e23606e8c1c17bb8cb414c7b 62B
e6
e1dacce0d071513e3b18c0909c1f9c133c0372 2KB
1a
553af8ce191d29b311875f6e30a3f6bff04d5f 51B
15
f6e6510c56ea0f6af77b870761dbd9d18b587a 8KB
6b
fa26e71d2f289b94451c60e12a07669062a309 17KB
76
2af345471f3480b95fedef0ca73e67512f9351 578B
29
b59c0f37a00307b20d042d913fb74f61232c47 61B
4f
8d21a05cb548986d3f42f91fa89eb71a88a41e 16KB
61
ee54442b759849759267831b0ad2d1066a8fa8 51B
5b
65fbc1e1b4d3fdd6f6e3fade199acf2f3e5543 62B
b2
dbba0ebf70eb3480b002557ab1e8b63e9fc269 47B
c7
ebbdee6af941e9d9b8a67b8b597328cc8fc447 15KB
97
4c557a1aa06baf96bd02030321ff33de415091 210B
34
16f372c1eeb09470ba1b89626231a974491125 15KB
info
68
415d74d2ceafc93f1387c832f14de808e6c15e 51B
f0
e7e1db7900a9ea9afc486b11c5e6967c804410 2KB
7a
1451a1c9a3dbbac5fe07e8cfab7952c016ec5b 50B
57
40efbb49afb613433a05981358a514612d3dd5 282B
pack
20
1ff8f503c485503a08a62ca447158585e3989f 179B
1c
c2d7be033e738af1a6dce057c714e0040458ba 239B
0f
fb2d98ef5d01b3a31581bbfcfc2ac9b7c5e462 617B
f6
f01f80404b2b07319b808038534c440ec9355d 17KB
cb
c7886ce9ce810c1496c7ec0447c2d9d86edaf2 238B
25
1ad5f2f2853b6712870519141ba4440dbe15da 210B
17
0828e8c90c5e1315ff369ed27696c9e12248f8 47B
96e469dc892d64cbdd14023d766378c0caf1dc 221B
04
eeb0278907919157ca0a654745e40dfaf7ce5b 489B
41
a69955cb93bac823dbddc3456f8174df2e256c 210B
96
13bc360ef738e1f36eb9e52efb53ccac6a06ad 8KB
a0
08d5d5a077404a862c94655d546aa89cabf797 198B
e4683dbbd97dcb056eba9fc3ab2a136f38a0ae 51B
19
86acde6e1bee2724208d578e299493cd34482e 209B
62
649d608606d08024028235f413b8bf7a1909c6 6KB
ff
b30e6e70c1b4ac98da9c9fd6c8f8610508057d 47B
c3
177d39e0c608c9bfe1d9f56751954ce088fa85 16KB
7e
ec0f2cbc9ac4037251849c3e26c13339e757bd 485B
99
92300489d64f99e77b3f3029d478ca89a2d62e 48B
0024bab6092218414b631bde50fed73f1a33a5 2KB
31
c23deadd8d6ee08e65ef10a73419ed8ee476b4 47B
b9
078bd854b2b6d0aac3b26040031c97923cbc54 123B
26
0c4f796252f7566b4afc7218f60380d3ffed28 239B
02
d08448f916b5ad98ff72a1c2595118984c71a3 227B
3b
37d05769efe089f8d50adae8fcf81bea86bbe7 7KB
9d
659594ec8329d63e7aae3f373e04d161b6d9d6 6KB
e3
4e63ebeae51928961cc35a10e4d4e09dc19355 3KB
73
ac89d2660dc0c5ebb79df8dcdf2b71a98c7257 48B
c9
4676b653206ee82bf00cb1b3e8bfab792d5a53 238B
80
2dc38b7d3e35a4df8eb2a61844edd3e7aa4caa 47B
23
25aa0c7abc0b9acdc96676d7b7e2ac5c2da049 62B
info
exclude 240B
COMMIT_EDITMSG 63B
HEAD 23B
mysql-company.cbp 2KB
mysql-company.depend 2KB
共 91 条
- 1
资源评论
刘良运
- 粉丝: 68
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功