我正在 MySQL Workbench 中对数据库进行逆向工程,但它似乎没有导入或识别外键。这意味着我无法用它来绘制关系。
当我试图让它工作时,我正在使用几个表的片段,所以它并不复杂。
以下是我尝试使用的 2 个演示表:
CREATE TABLE users (
UserID varchar(32) NOT NULL,
OrgID varchar(6) NOT NULL,
RegionID int NULL,
LocationID int NULL,
Name nvarchar(60) NULL,
Crypt varchar(32) NULL,
Security int NULL,
Status int NULL,
PRIMARY KEY ( UserID ),
CONSTRAINT fk_OrgID_Users FOREIGN KEY (OrgID) REFERENCES Organisations(OrgID)
);
CREATE TABLE Organisations(
OrgID varchar(6) NOT NULL,
Name nvarchar(70) NOT NULL,
Address1 varchar(50) NULL,
Address2 varchar(50) NULL,
Address3 varchar(50) NULL,
Town varchar(20) NULL,
County varchar(20) NULL,
PostCode varchar(10) NULL, …Run Code Online (Sandbox Code Playgroud) 我正在使用 Codeigniter 3 构建一个应用程序,但用户不断被随机注销。我认为这可能是使用 AJAX 的问题,因为我读过这有点错误,但它只是在浏览等时随机发生,而不是任何特定时间,因为它可能会在几分钟内反复发生或持续一段时间.
我正在使用 ion_auth 插件进行身份验证等。
我的会话存储在数据库中,这是从 CI 导入的配置:
//$config['sess_driver'] = 'files';
$config['sess_driver'] = 'database';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
//$config['sess_save_path'] = '/home/slight/system/cache/';
$config['sess_save_path'] = 'ci_sessions';
$config['sess_match_ip'] = TRUE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
Run Code Online (Sandbox Code Playgroud)
我怎么能调试呢?是什么原因造成的?我可以检查什么?
我有一个关于GIT分支的查询,文档似乎没有涵盖它.
场景:
我有一个申请.
我想做一些编辑,所以我在我的存储库上创建了一个分支.
我在分支上提交.
现在,如何在实时环境中查看这些编辑,而无需将它们提交给主实时应用程序.
在提交到主应用程序之前,我显然需要在实时环境中检查编辑?
我错过了什么吗?
我正在使用codeigniter来查询数据库,我需要在where子句中有条件地比较数组.
所以基本上我想做:where_in OR where_in取决于哪个数组中包含数据.所以我将有一个user_id数组或一个area_id数组.
我不确定如何结合where_in比较.这是我需要修改的查询:
public function get_checks_test($org_id,$users,$areas) {
// get todays date
$todays_date = date("Y-m-d");
// build where array
$check_array = array('c.org_id =' => $org_id, 'c.status !=' => '0', 'c.due <=' => $todays_date);
// build query
$this->db->select('c.*,a.check_area_id,b.check_user_id,d.area_name,u.first_name,u.last_name');
$this->db->order_by('c.due', 'asc');
$this->db->where($check_array);
$this->db->where_in('user_id', $users);
$this->db->or_where_in('area_id', $areas);
$this->db->join('check_assigned_areas a','a.check_id = c.check_id','left');
$this->db->join('check_assigned_users b','b.check_id = c.check_id','left');
$this->db->join('areas d','d.area_id = a.check_area_id','left');
$this->db->join('users u','u.id = b.check_user_id','left');
$check_object = $this->db->get('checks c');
return $check_object->result();
}
Run Code Online (Sandbox Code Playgroud)
我不认为我能找到一个or_where_in函数.
我可以这样做,还是需要重新考虑?
谢谢
我有一个哈希的MD5密码保存在MySQL数据库中.无论如何都要找出原始密码中有多少个字符?
我认为没有,因为从我所看到的,无论如何都很难解密哈希密码.
无论如何我能做到这一点?
编辑:因为严重的反弹!! 我对解密哈希不感兴趣,因为我知道这不是我读过的好主意.
我问的原因是因为.
我正在将包含历史数据库的旧系统迁移到新的更新应用程序.所有用户,数千人都将他们的密码保存在数据库MD5中,但大多数都少于8个字符,所以我只是想知道是否有办法知道他们的原始密码是否超过8个字符,那么我可以加密它或者强制用户更改密码.
但是我必须强迫所有用户根据它的外观更改密码
php ×3
codeigniter ×2
mysql ×2
activerecord ×1
database ×1
foreign-keys ×1
git ×1
github ×1
hash ×1
ion-auth ×1
passwords ×1
session ×1
where-in ×1