Doctrine学习笔记(实体) —— 2
2016-03-31 13:41
651 查看
注: 该系列博文采用symfony2.7.*框架。
![](https://img-blog.csdn.net/20160331130854597)
执行完上述命令后, 会在数据库中产生一个表, 字段和实体类字段对应,
![](https://img-blog.csdn.net/20160331132701401)
执行
即可完成对数据库和实体的更新
form godruoyi supper
symfony2 项目框架(demo)
新建实体
<?php /** * Created by PhpStorm. * User: Godruoyi * Date: 2016/3/31 * Time: 8:58 */ //实体类命名空间, namespace MyFirst\HelloBundle\Entity; use Doctrine\ORM\Mapping as ORM; //需要移入doctrine的核心库 //use Doctrine\ORM\Mapping\OneToOne; /** * 实体类, user * @package MyFirst\HelloBundle\Entity * * 把该实体交给repository管里, 并在命令生产get set 方法时自动生产UserRepository, * @ORM\Entity(repositoryClass="UserRepository") * * 对应的数据库表名 * @ORM\Table(name="t_user") */ class User { /** * @var * * 标明该属性输一个主键ID * @ORM\Id * * 字段类型 integer, 对应的数据库字段名t_id * @ORM\Column(type="integer", name="t_id") * * 自增 * @ORM\GeneratedValue(strategy="AUTO") * */ protected $id; /** * @var string * * @ORM\Column(type="string", name="t_username") */ protected $username; /** * @var string * * @ORM\Column(type="string", name="t_password") */ protected $password; /** * @var string * * @ORM\Column(type="string", name="t_email") */ protected $email; /** * @var string * * @ORM\Column(type="string", name="t_nickname") */ protected $nickname; /** * @var * * @ORM\Column(type="integer", name="t_age") */ protected $age;
修改数据库配置
修改 app/config/parameter.yml
parameters: database_host: 127.0.0.1 database_port: null database_name: symfony_my database_user: root database_password: ruoyi mailer_transport: smtp mailer_host: 127.0.0.1 mailer_user: null mailer_password: null secret: ThisTokenIsNotSoSecretChangeIt
自动生成数据库和get set方法 命令
windows下前面加php , Linux下不要php#创建数据库 php app\console doctrine:database:create //windows app\console doctrine:database:create //linux #创建get set 方法, HelloBundle 是我在symfony中新建的一个bundle, 若新执行该命令在执行上面那条命令, 会显示数据库不存在 php app\console generate:doctrine:entities HelloBundle #更新实体到数据库 php app\console doctrine:schema:update --force
执行完上述命令后, 会在数据库中产生一个表, 字段和实体类字段对应,
更新实体属性
要更新实体属性和数据库字段, 只要在需要更新得实体类中修改属性即可, 如我要在user中新加入一个 address, 并修改nickname为nickname2;<?php class User{ ...其他属性 /** * @var string * 修改原来的 nickname 为 nickname2, 若只改属性明, 不改表名则数据库字段还是t_nickname * @ORM\Column(type="string", name="t_nickname2") */ protected $nickname2; /** * @var * 新增地址属性 * @ORM\Column(type="string", name="t_address") */ protected $address; ...get set 方法 }
执行
#创建get set 方法, php app\console generate:doctrine:entities HelloBundle #更新实体到数据库 php app\console doctrine:schema:update --force
即可完成对数据库和实体的更新
form godruoyi supper
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- PHP数据库长连接mysql_pconnect的细节
- Symfony事件类型
- Php Installing An Expansion
- php7 读取php.ini[4]
- PHP+Apache在Windows 9x下的安装和配置
- IIS 6 的 PHP 最佳配置方法
- 安装Apache和PHP的一些补充
- Linux Apache+MySQL+PHP
- 建立Apache+PHP+MySQL数据库驱动的动态网站
- PHP 5.3.0 安装分析心得
- apache 环境下 php 的配置注意事项
- ASP.NET、ASP、PHP、JSP之间有什么区别?
- PHP VBS JS 函数 对照表