- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
注意:这不是 this question
我的任务是构建一项调查,我们的客户服务人员可以使用该调查从客户那里获取有关我们服务等的信息。
我的问题是如何将问题/答案存储在存储问题的数据库中,如下所示:
这很容易,但是问题可以嵌套多个层次:
如果我不必将它存储在数据库中,我会将问题(实际上是整个调查)表示为一个组合,但我不知道如何存储这样的东西。
1 Câu trả lời
如果您的问题形成了一棵树,而不是一张图,有两种常见的方法可以represent hierarchical data in sql .
Adjacency List Model 模型 需要重复自连接来查找子项(子项的...子项的)。如果你有一个 ORM,比如 Hibernate,ORM 将负责做足够的自连接以带回一个问题及其子答案。如果没有 ORM 来执行此操作,您将不得不动态地向查询添加自联接,或者执行多个查询,一个查询用于前一个结果集中的每一行。
通常归功于 Joe Celko 的嵌套集模型允许您在一次选择中获得整棵树。但这意味着添加和删除节点更加复杂,需要更新所有行。
在邻接表中,您可以有一个像这样的问题表(id, question text, id_next_if_true, id_next_if_false)
。这与经典的邻接列表不同,因为不是 child 持有 parent_id, parent 持有两个 child id,或 null。
关于mysql - 如何构建调查数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/749486/
Tôi đang gặp sự cố khi xây dựng một ứng dụng cụ thể bằng gradle. Ứng dụng này có thể được biên dịch và xây dựng bằng Eclipse và chạy tốt trên máy tính bảng. Khi tôi thử xây dựng nó bằng Gradle, "compileDebugJava"
Tôi có một chương trình C do một lập trình viên nghỉ việc để lại. Tôi cố gắng tìm hiểu chính xác anh ấy đang làm gì và sắp xếp lại phần mềm thành thứ gì đó hợp lý hơn để tôi có thể xây dựng nó dễ dàng hơn. Tôi sử dụng CMake để xây dựng, còn anh ấy sử dụng Make. có
Tôi vừa bắt đầu đọc "Pro Spring MVC with web flow" và sách có kèm theo một ví dụ mã mà tôi muốn làm theo. Những gì tôi muốn - Tôi muốn xây dựng ứng dụng như trong sách, sử dụng Gradle. Những vấn đề là gì - Tôi chưa bao giờ sử dụng Gradle
Tôi hy vọng ai đó đã làm điều này rồi. Tôi đang cố gắng thiết lập bản dựng liên tục trong teamcity cho một trong những dự án Angular 2 của mình. Sau khi nghiên cứu, tôi đã làm theo các bước sau: Bước 1: Cài đặt js cho teamcity
Tôi có một giải pháp trang web ASP.Net cũ trông như thế này: Khi tôi xây dựng giải pháp trong Visual Studio, tôi nhận được kết quả sau: ------ Build started: Project: C:\..
Tôi sử dụng gulp-usref, gulp-if, gulp-uglify, gulp-csso và gulp-file-include để xây dựng ứng dụng của mình. Mọi thứ trong bản dựng đều hoạt động tốt ngoại trừ HTML vẫn giữ nguyên
Tôi đang phát triển một ứng dụng di động nội bộ bằng ionic2. Tôi có thể xây dựng thành công cho ios thông qua: ionic build ios và ionic build ios --prod nhưng nó cứ bị lỗi khi tôi thực hiện
Tôi là một nhà phát triển .NET/C# giàu kinh nghiệm nhưng lại mới làm quen với hầu hết các công nghệ/thư viện ở đây (bao gồm cả công việc SQL/DB). Tôi đang phát triển một ứng dụng .NET với nền tảng Azure/Entity Framework và một ứng dụng di động
Tôi đang sử dụng VS 2008. Tôi có thể biên dịch thành công giải pháp của mình bằng IDE. Tuy nhiên, khi tôi thử xây dựng bằng devenv.com, nó không thành công với lỗi "Lỗi: Không tìm thấy đầu ra nào cho nhóm đầu ra của dự án '(không thể xác định tên)'". Nhóm, cấu hình của nó, hoặc
Phiên bản: ember.js 2.7, ember-data 2.7 ember-cli 2.9.1 // cũng hoạt động với ember-cli 2.7 node 6.9.1, npm 3.10.9 // cũng hoạt động với no
Đây là lần đầu tiên tôi mày mò AzureDevops và thiết lập một số tác vụ CI. Tôi có một kho lưu trữ công khai (mã nguồn mở) và một giải pháp (.sln) chứa 3 dự án F#. Giải pháp có sẵn trên Windows/Mac/Li
Có vẻ như VS2008 vẫn chưa được phiên bản 5.1.5 hiện tại hoặc kho lưu trữ CVS STLPort hỗ trợ. Nếu ai đó đã làm điều này rồi thì sẽ rất hữu ích nếu chia sẻ nếu có thể :) Ngoài ra, hãy tìm hiểu về bản dựng VS2005 hoặc 2008 x64
Tôi có một dự án Python 2.7 và cho đến nay đã sử dụng gfortran và MinGW để xây dựng các tiện ích mở rộng. Tôi sử dụng MinGW vì nó dường như hỗ trợ các câu lệnh ghi và mảng có thể phân bổ trong mã Fortran, trong khi MSVC
đóng cửa. Câu hỏi này không liên quan đến chủ đề. Hiện tại không chấp nhận câu trả lời. Bạn có muốn cải thiện câu hỏi này không? Cập nhật câu hỏi để phù hợp với chủ đề trên Stack Overflow. Đã đóng cửa 9 năm trước. Cải thiện hàng đợi này
Tôi tự hỏi tại sao Zimbra Wiki chỉ liệt kê các nền tảng cụ thể cho quá trình xây dựng. Điều này có nghĩa là không thể xây dựng Zimbra trên các bản phân phối Linux khác không? Cộng đồng Zimbra chọn một bản phân phối Linux cụ thể để xây dựng Zimbra
Tôi sẽ xây dựng một công cụ CLI trong Swift. Tôi đã tạo dự án bằng lệnh này swift package init --type executable Khi tôi xây dựng dự án của mình và phân tích các tham số trong Xcode, hãy đọc bí danh và
Tôi muốn thiết lập quyền cho các tệp được thêm vào ảnh docker. Tôi có Dockerfile đơn giản này: FROM ubuntu:utopic WORKDIR /app RUN groupadd -g 1000 b
Khi tôi sử dụng clBuildProgram trong mã OpenCl của mình, nó không thành công với mã lỗi -11 mà không có bất kỳ thông tin nhật ký nào. Đây là mã của tôi trông như thế nào: ret = clBuildProgram(program
Tôi có một thanh điều hướng ở phía dưới có trang danh sách sử dụng khối trạng thái. lớp _MainPageState mở rộng State { int _index = 0; @override Wi
Tôi đang sử dụng Jenkins trên máy cục bộ của mình (URL Jenkins không được hiển thị trên Internet, nhưng Internet được bật trên máy đó.) Tôi đã thực hiện các thay đổi cấu hình sau: Cài đặt plugin Git và Github trên công cụ Jenkins
Tôi là một lập trình viên xuất sắc, rất giỏi!