# debug
# CFLAGS = -g -w -c

# release
CFLAGS = -O -w -c

CC = xlC_r

COMPILE = $(CC) $(CFLAGS)

OBJECTS = myapp.o socket.o mylog.o

TARGET = myapp

all: $(TARGET)

$(TARGET): $(OBJECTS)
 $(CC) -o $@ $(OBJECTS)
myapp.o: myapp.c socket.h mylog.h
 $(COMPILE) $<
socket.o: socket.c socket.h mylog.h
 $(COMPILE) $<
mylog.o: mylog.c mylog.h
 $(COMPILE) $<

clean :
 rm -f *.o $(TARGET)

posted @ 2011-05-18 14:40 ruobent 阅读(4) 评论(0) 编辑
MySQL5 绿色版安装教程
 
内容提要:mysql-noinstall-5.0.67-win32.zip的安装教程
 
一、下载,这里使用绿色解压缩版
 
 
二、配置MySQL5的参数
 
1、解压缩绿色版软件到D:\mysql-5.0.67-win32
2、修改D:\mysql-5.0.67-win32\my-small.ini文件内容,添加红色内容
     
[client]
#password = your_password
port  = 3306
socket  = /tmp/mysql.sock
default-character-set=gbk
 
[mysqld]
port  = 3306
socket  = /tmp/mysql.sock
default-character-set=gbk
skip-locking
key_buffer = 16K
max_allowed_packet = 1M
table_cache = 4
sort_buffer_size = 64K
read_buffer_size = 256K
read_rnd_buffer_size = 256K
net_buffer_length = 2K
thread_stack = 64K
 
3、安装MySQL5的服务,服务名自己定义为MySQL5.
1)、在DOS窗口下进入D:\mysql-5.0.67-win32\bin目录
2)、执行安装MySQL服务名的命令:
D:\mysql-5.0.67-win32\bin>mysqld --install MySQL5 --defaults-file=D:\mysql-5.0.67-win32\my-small.ini

Service successfully installed.
 
3)、启动MySQL5服务
D:\mysql-5.0.67-win32\bin>net start mysql5
MySQL5 服务正在启动 .
MySQL5 服务无法启动。
 
4)、登陆MySQL5服务器
D:\mysql-5.0.67-win32\bin>mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.67-community MySQL Community Edition (GPL)
 
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
 
mysql>
 
注意:MySQL5的管理员用户名为root,密码默认为空。
 
5)、查看数据库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| test               |
+--------------------+
3 rows in set (0.02 sec)
 
可以看到MySQL服务器中有三个数据库。
 
6)、使用数据库
mysql> use test
Database changed
 
7)、查看数据库中的表
sql> show tables;
Empty set (0.00 sec)
 
8)、创建表ttt
mysql> create table ttt(a int,b varchar(20));
Query OK, 0 rows affected (0.00 sec)
 
9)、插入三条数据
mysql> insert into ttt values(1,'aaa');
Query OK, 1 row affected (0.02 sec)
 
mysql> insert into ttt values(2,'bbb');
Query OK, 1 row affected (0.00 sec)
 
mysql> insert into ttt values(3,'ccc');
Query OK, 1 row affected (0.00 sec)
 
10)、查询数据
mysql> select * from ttt;
+------+------+
| a      | b       |
+------+------+
|    1 | aaa     |
|    2 | bbb    |
|    3 | ccc     |
+------+------+
3 rows in set (0.00 sec)
 
11)、删除数据
mysql> delete from ttt where a=3;
Query OK, 1 row affected (0.01 sec)
 
删除后查询操作结果:
mysql> select * from ttt;
+------+------+
| a    | b         |
+------+------+
|    1 | aaa      |
|    2 | bbb     |
+------+------+
2 rows in set (0.00 sec)
 
12)、更新数据
mysql> update ttt set b = 'xxx' where a =2;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
 
查看更新结果:
mysql> select * from ttt;
+------+------+
| a    | b          |
+------+------+
|    1 | aaa      |
|    2 | xxx       |
+------+------+
2 rows in set (0.00 sec)
 
13)、删除表
mysql> drop table ttt;
Query OK, 0 rows affected (0.00 sec)
 
查看数据库中剩余的表:
mysql> show tables;
Empty set (0.00 sec)
 
 
三、更改MySQL5数据库root用户的密码
 
1、使用mysql数据库
mysql> use mysql
Database changed
 
2、查看mysql数据库中所有的表
mysql> show tables;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
| db                        |
| func                      |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| host                      |
| proc                      |
| procs_priv                |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
+---------------------------+
17 rows in set (0.00 sec)
 
3、删除mysql数据库中用户表的所有数据
mysql> delete from user;
Query OK, 3 rows affected (0.00 sec)
 
4、创建一个root用户,密码为“xiaohui”。
mysql> grant all on *.* to root@'%' identified by 'xiaohui' with grant option;
Query OK, 0 rows affected (0.02 sec)
 
5、查看user表中的用户
mysql> select User from user;
+------+
| User |
+------+
| root |
+------+
1 row in set (0.00 sec)
 
6、重启MySQL5:更改了MySQL用户后,需要重启MySQL服务器才可以生效。
D:\mysql-5.0.67-win32\bin>net stop mysql5
MySQL5 服务正在停止..
MySQL5 服务已成功停止。

D:\mysql-5.0.67-win32\bin>net start mysql5
MySQL5 服务正在启动 .
MySQL5 服务已经启动成功。
 
7、重新登陆MySQL5服务器
D:\mysql-5.0.67-win32\bin>mysql -uroot -pxiaohui
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.67-community MySQL Community Edition (GPL)
 
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
 
mysql>
 
四、数据库的创建与删除
 
1、创建数据库testdb
mysql> create database testdb;
Query OK, 1 row affected (0.02 sec)
 
2、使用数据库testdb
mysql> use testdb;
Database changed
 
3、删除数据库testdb
mysql> drop database testdb;
Query OK, 0 rows affected (0.00 sec)
 
4、退出登陆
mysql> exit
Bye
 
D:\mysql-5.0.67-win32\bin>
 
五、操作数据库数据的一般步骤
 
1、启动MySQL服务器
2、登陆数据库服务器
3、使用某个要操作的数据库
4、操作该数据库中的表,可执行增删改查各种操作。
5、退出登陆。
 
---------------------完---------------------

本文出自 “Java初学者” 博客,请务必保留此出处http://trans.blog.51cto.com/503170/109702

posted @ 2011-03-23 23:58 ruobent 阅读(40) 评论(0) 编辑

MySQL(http://www.mysql.com)mm.mysql-2.0.2-bin.jar
Class.forName( "org.gjt.mm.mysql.Driver" );
cn = DriverManager.getConnection( "jdbc:mysql://MyDbComputerNameOrIP:3306/myDatabaseName", sUsr, sPwd );

2. PostgreSQL(http://www.de.postgresql.org)pgjdbc2.jar
Class.forName( "org.postgresql.Driver" );
cn = DriverManager.getConnection( "jdbc:postgresql://MyDbComputerNameOrIP/myDatabaseName", sUsr, sPwd );

3. Oracle(http://www.oracle.com/ip/deploy/database/oracle9i/)classes12.zip
Class.forName( "oracle.jdbc.driver.OracleDriver" );
cn = DriverManager.getConnection( "jdbc:oracle:thin:@MyDbComputerNameOrIP:1521:ORCL", sUsr, sPwd );

4. Sybase(http://jtds.sourceforge.net)jconn2.jar
Class.forName( "com.sybase.jdbc2.jdbc.SybDriver" );
cn = DriverManager.getConnection( "jdbc:sybase:Tds:MyDbComputerNameOrIP:2638", sUsr, sPwd );
//(Default-Username/Password: "dba"/"sql")

5. Microsoft SQLServer(http://jtds.sourceforge.net)
Class.forName( "net.sourceforge.jtds.jdbc.Driver" );
cn = DriverManager.getConnection( "jdbc:jtds:sqlserver://MyDbComputerNameOrIP:1433/master", sUsr, sPwd );

6. Microsoft SQLServer(http://www.microsoft.com)
Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver" );
cn = DriverManager.getConnection( "jdbc:microsoft:sqlserver://MyDbComputerNameOrIP:1433;databaseName=master", sUsr, sPwd );

7. ODBC
Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );
Connection cn = DriverManager.getConnection( "jdbc:odbc:" + sDsn, sUsr, sPwd );

8.DB2
Class.forName("Com.ibm.db2.jdbc.net.DB2Driver");
String url="jdbc:db2://192.9.200.108:6789/SAMPLE"
cn = DriverManager.getConnection( url, sUsr, sPwd );

9.Informix

Class.forName("com.informix.jdbc.IfxDriver");
String url = "jdbc:informix-sqli://MyDbComputerNameOrIP:1533/myDB:INFORMIXSERVER=myserver;
user=testuser;password=testpassword"; //myDB为数据库名
Connection conn= DriverManager.getConnection(url);

posted @ 2011-03-15 18:31 ruobent 阅读(9) 评论(0) 编辑

中午蛋疼,再做一遍华为面试题,顺便立帖严重BS下面试那天自己写的作答!

很简单的代码,没有注释。

代码
1 struct listNode
2 {
3 int a;
4 listNode * pNext;
5 };
6
7 listNode* makeList(int len)
8 {
9 listNode* pCreator = NULL;
10 listNode* pRoller = (listNode*)malloc(sizeof(listNode));
11 listNode* pHead = pRoller;
12 pHead->a = 0;
13 pHead->pNext = NULL;
14
15 for (int i=1; i<len; ++i)
16 {
17 pCreator = (listNode*)malloc(sizeof(listNode));
18 pCreator->a=i;
19 pCreator->pNext = NULL;
20 pRoller->pNext = pCreator;
21 pRoller = pCreator;
22 }
23
24 return pHead;
25 }
26
27  void freeList(listNode* pHead)
28 {
29 listNode* pPrev=pHead;
30 listNode* pNext=NULL;
31
32 while (pPrev != NULL)
33 {
34 pNext = pPrev->pNext;
35 free(pPrev);
36 pPrev = pNext;
37 }
38 }
39
40 void printList(listNode* pHead)
41 {
42 while (pHead!=NULL)
43 {
44 printf("%d\n", pHead->a);
45 pHead = pHead->pNext;
46 }
47 }
48
49 void rotateList(listNode** pHead)
50 {
51 listNode* pPrev = NULL;
52 listNode* pNext = NULL;
53 listNode* pCurr = NULL;
54
55 if ((*pHead)==NULL || (*pHead)->pNext==NULL)
56 {
57 return;
58 }
59
60 pPrev = *pHead;
61 pCurr = pPrev->pNext;
62 pPrev->pNext = NULL;//尾置空
63
64 while (pCurr!=NULL && pCurr->pNext!=NULL)
65 {
66 pNext = pCurr->pNext;
67 pCurr->pNext = pPrev;
68 pPrev = pCurr;
69 pCurr = pNext;
70 }
71
72 pCurr->pNext = pPrev;
73 *pHead = pCurr;
74 }
75
76 int main()
77 {
78 listNode * head = makeList(15);
79 printList(head);
80 rotateList(&head);
81 printList(head);
82 freeList(head);
83 head = NULL;
84 return 0;
85 }

 

posted @ 2010-03-25 13:43 ruobent 阅读(14) 评论(1) 编辑