我对MySQL Workbench有一些问题,因为我在创建表时有时无法设置外键.我说有时因为它并不总是这样.问题是,当我输入FK并选择参考表时,我无法选择引用的列.我无法单击复选框,下拉列表为空.我无法弄清楚问题是什么,因为我认为FK的工作没有真正的区别.我检查了数据类型,名称等,它们是正确的.我将提供一个SS来详细说明.绿色标记的键(id_hem)正常工作,红色标记表示没有.

我问这个问题,因为我为一群相当孤立的人(不超过80人)维护了一个小网站.它目前具有简单的登录功能(电子邮件,密码),"受保护"的数据仅仅是我们会员的联系信息(电话,地址,电子邮件).该网站是用PHP编写的,并使用My SQL.
最近几天,我一直在阅读有关网站安全的论坛和其他网站,因为我想在我们的网站上加强它.现在,安全性包括SQL注入保护和存储在数据库中的MD5哈希密码.这种感觉很不合适,但我也觉得很容易把它拿走太远.我的意思是这里并不完全是核发射代码,但数据人们通常觉得不能在网上显示.该网站本身由一个相当着名的网络主机托管.
我现在能看到的唯一威胁是恶作剧者在网站上磕磕绊绊并尝试了一些自制的结合?
所以我觉得中间的某个地方就足够了.喜欢
你认为更有经验的人是什么?
更新:我想补充一点,我自己做所有事情,没有预算购买花哨的加密技术或聘请专业程序员.
我想知道是否有一种简单的方法来使用标准绘制表格(mysql_fetch_assoc),其中最左边的列是标题,如下所示:
Name | Peter Jacksson | Steven Spielberg | Martin Scorsese | Birthyear | 1961 | 1946 | 1942 | Movie | Lord of the Rings | Jurassic Park | Cape Fear |
(老鼠!SO不支持table-tag).
我正在私人日托中心为一小部分父母建立一个网站.该网站的一个理想功能是拥有一个日历,您可以在其中选择负责清理区域设置的日期.现在,我已经制作了一份工作日历.我在网上发现了一个简单的脚本,我修改了abit以符合我们的目的.从技术上讲,它运作良好,但我开始怀疑我是否真的应该改变它从数据库中提取信息的方式.
日历按月呈现,并使用for循环绘制为表格.这意味着每次加载页面时,所述for循环运行28-31次,具体取决于月份.为了介绍谁负责每天清洁,我已经添加了一个MySQL数据库的调用,其中存储了每个成员的清洁日.伪代码看起来像这样,简化:
Draw table month
for day=start_of_month to day=end_ofmonth
type day
select member from cleaning_schedule where picked_day=day
type member
Run Code Online (Sandbox Code Playgroud)
这意味着页面的每次重新加载都会对数据库进行至少28次SELECT调用,而对我来说,它似乎既低效又可能容易受到DDOS攻击.是否有更有效的方法来获得相同的结果?还有更复杂的预订日历,他们如何处理?
我制作了一个简单的日历,您可以通过下拉列表选择年份和月份.
<form name=calenderselect method='post' action='calendar.php'>
<select name='month' id='month'>
<option>January</option>
<option>Februari</option>
<option>March</option>
....
</select>
<input type='submit' name='submit' value='Change' />
</form>
Run Code Online (Sandbox Code Playgroud)
我发现每次想要更改月份时都必须按下提交按钮.我想改变我点击列表中的月份的那一刻.
我试图让表格显示它的全部内容,尽管可能有一些空单元格.该表包含一个小俱乐部的十个可能的职位(即主席,秘书等).每个位置都是指成员表中的成员ID,具体取决于被选为该职位的人员.一个职位可能是空缺的,这正是我想要完成的.结构(简化)如下:
表"成员"
CREATE TABLE members (
id_member INT NOT NULL,
member_name VARCHAR(45),
PRIMARY KEY (id_member));
Run Code Online (Sandbox Code Playgroud)
表"位置"
CREATE TABLE positions (
id_position INT NOT NULL,
position_name VARCHAR(45),
PRIMARY KEY (id_position)
FOREIGN KEY (id_member) REFERENCES members(id_member));
Run Code Online (Sandbox Code Playgroud)
选择语法
SELECT position_name, member_name
FROM members
JOIN positions USING(id_members);
Run Code Online (Sandbox Code Playgroud)
只要在某个位置上有成员但是如果它是空的,那么该行就不会出现.是否有一些方法可以使表位置总是返回每一行,尽管列id_member有空单元格?
期望的结果:
Chariman - Jack Carver
秘书 - Joe Hill
Accounter - NULL
网站管理员 - Joanna Robson
对于存储少量用户数据的网站,是否有任何赞成或反对意见?截至目前,我有一个数据库,包含所有需要的用户数据(地址,电话等).现在我正在考虑建立一个数据库来跟踪当前事件,其中一些事件与特定用户相关联.除了可能通过"类型"(用户数据库和"事件数据库")分离数据更"有品味"之外,有没有真正的理由这样做?用户数量永远不会超过100.