我在做宠物的过程中对数据库的理解

来源:互联网 发布:9553软件下载。 编辑:程序博客网 时间:2024/04/30 15:34

7.23-7.29 学习三维动画的制作 
创建了游戏场景中的 桥 椅子 教室  以及公园中的柱子
7.30  上午
创建成功了登陆界面
学会运用了  vc.net 的帮助文档很好用的  制作 比卡丘.icon的图标
下午
创建学习
所需要的 三维动画中的 医院  超市等建筑
7.31
设计zhuce所需要的界面
8.1
把社区的思路整理清楚
8.8
数据库的连接 我采用了  ole db的做法,虽然可以实现查询但是登陆功能还是不能实现的
private: System::Void button1_Click(System::Object *  sender, System::EventArgs *  e)
   {   oleDbDataAdapter1->SelectCommand->Parameters->Item[S"username"]->Value = textBox1->Text;
       dsuserpass1->Clear();
    if (textBox2->Text==oleDbDataAdapter1->Fill(dsuserpass1))
    {
     Form1::notifyIcon1->Visible=true;
        Form1::Visible=false;
    }
   }
8.9--8.18
连接数据库  //实现的是数据库的查询工作,把查到的数据显示在label中
this->oleDbDataAdapter1->SelectCommand->Parameters->Item[S"username"]->Value=strusername;
    dataSet21->Clear();
    this->oleDbDataAdapter1->Fill(dataSet21);
    this->label1->Text=dataSet21->Tables->Item[0]->Rows->Item[0]->Item[S"petname"]->ToString();
             this->label2->Text=dataSet21->Tables->Item[0]->Rows->Item[0]->Item[S"petuser"]->ToString();
             this->label3->Text=dataSet21->Tables->Item[0]->Rows->Item[0]->Item[S"petgrow"]->ToString();
             this->label4->Text=dataSet21->Tables->Item[0]->Rows->Item[0]->Item[S"petbirthday"]->ToString();
             this->label5->Text=dataSet21->Tables->Item[0]->Rows->Item[0]->Item[S"petsex"]->ToString();

//实现的是插入数据库的操作
                                 oleDbConnection1->Open();
     try{
      oleDbDataAdapter1->InsertCommand->Parameters->Item[0]->Value=textBox1->Text;//用户名
         oleDbDataAdapter1->InsertCommand->Parameters->Item[1]->Value=textBox2->Text;//密码
      if(String::Compare(textBox3->Text,textBox2->Text)!=0)//检验用户密码
      { MessageBox::Show(this,"输入确认密码不正确","注册用户");
      textBox3->Text="";
      textBox2->Text="";
      oleDbConnection1->Close();
      }
                  oleDbDataAdapter1->InsertCommand->Parameters->Item[2]->Value=textBox4->Text;//邮箱
      oleDbDataAdapter1->InsertCommand->Parameters->Item[3]->Value=textBox5->Text;//昵称
      oleDbDataAdapter1->InsertCommand->Parameters->Item[4]->Value=textBox6->Text;//称呼
      if(radioButton1->Checked==true)//选择性别
      oleDbDataAdapter1->InsertCommand->Parameters->Item[5]->Value=radioButton1->Text;
      else
       if (radioButton2->Checked==true)
                  oleDbDataAdapter1->InsertCommand->Parameters->Item[5]->Value=radioButton2->Text;
      else
      {MessageBox::Show(this,"没有选择性别""注册用户");
                   oleDbConnection1->Close();
      }
      oleDbDataAdapter1->InsertCommand->Parameters->Item[6]->Value=dateTimePicker1->Text;
     
      oleDbDataAdapter1->InsertCommand->ExecuteNonQuery();
      oleDbConnection1->Close();
     }
     catch(Exception* e){
      MessageBox::Show(S"请重新填写","注册用户");
     }
                MessageBox::Show(S"注册成功","注册用户");
    }
//数据库的更新
    try{
      this->oleDbDataAdapter1->UpdateCommand->Parameters->Item["Original_username"]->Value=strusername;//取的参数值
      dataSet21->Clear();
      this->oleDbDataAdapter1->Fill(dataSet21,"userpass");
      System::Data::DataRow* crow=dataSet21->Tables->Item[0]->Rows->Item[0];
      if((textBox1->Text=="")||(textBox2->Text==""))
      MessageBox::Show(S"不允许为空","更新信息");
      else{
      crow->Item[S"petname"]=textBox1->Text;
      crow->Item[S"petuser"]=textBox2->Text;
      oleDbDataAdapter1->Update(dataSet21,"userpass");
      MessageBox::Show(S"更新成功","更新信息");
      }

    }
    catch(Exception* e){
     MessageBox::Show(e->Message);
8.22    }
我们宠物资料
   我对VC.NET数据转换的一些心得 当然有同组的同学的帮助
   System::convert::tostring
                     todouble
                      toint
                       toint(16,32,64)
     偶然间我发现了还要有更好的办法,但是局限性有点差
     比如:
      double   pet_grow
我现在要把 他变成我所需要的 string传到数据库中去,可以这样 pet_grow.tostring
但是在有的数据中就会有不同的小麻烦
//查询数据库,从数据库读出宠物上次下线时候的状态信息
     label11->Text=dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petname"]->ToString();
     level = System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petclass"]->ToString());
     clean_now =System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petclear"]->ToString());
     hunger_now =System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"pethunger"]->ToString());
     health_now = System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"pethealthy"]->ToString());
     mood_now = System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petmoon"]->ToString());
     play = System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petplay"]->ToString());
     age = System::Convert::ToDouble(dataSet31->Tables->Item[0]->Rows->Item[0]->Item[S"petgrow"]->ToString());

 

 

原创粉丝点击