Class: LLMDB::Tools::DescribeTable
- Inherits:
-
RubyLLM::Tool
- Object
- RubyLLM::Tool
- LLMDB::Tools::DescribeTable
- Defined in:
- lib/llmdb/tools/describe_table.rb
Instance Method Summary collapse
- #execute(table_name:) ⇒ Object
-
#initialize(connection) ⇒ DescribeTable
constructor
A new instance of DescribeTable.
Constructor Details
#initialize(connection) ⇒ DescribeTable
Returns a new instance of DescribeTable.
11 12 13 14 |
# File 'lib/llmdb/tools/describe_table.rb', line 11 def initialize(connection) super() @connection = connection end |
Instance Method Details
#execute(table_name:) ⇒ Object
16 17 18 19 20 21 22 23 24 |
# File 'lib/llmdb/tools/describe_table.rb', line 16 def execute(table_name:) schema = @connection.table_schema(table_name) sections = ["Table: #{table_name}", format_columns(schema[:columns])] sections << format_foreign_keys(schema[:foreign_keys]) if schema[:foreign_keys].any? sections.join("\n") rescue LLMDB::QueryError => e { error: e. } end |